![]() |
![]() |
![]() |
Camel Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties | Signals |
enum CamelFolderFlags; struct CamelFolder; #define CAMEL_FOLDER_ERROR enum CamelFolderError; struct CamelFolderChangeInfo; struct CamelFolderQuotaInfo; void camel_folder_set_lock_async (CamelFolder *folder
,gboolean skip_folder_lock
); struct _CamelStore * camel_folder_get_parent_store (CamelFolder *folder
); const gchar * camel_folder_get_full_name (CamelFolder *folder
); gchar * camel_folder_dup_full_name (CamelFolder *folder
); void camel_folder_set_full_name (CamelFolder *folder
,const gchar *full_name
); const gchar * camel_folder_get_display_name (CamelFolder *folder
); gchar * camel_folder_dup_display_name (CamelFolder *folder
); void camel_folder_set_display_name (CamelFolder *folder
,const gchar *display_name
); const gchar * camel_folder_get_description (CamelFolder *folder
); gchar * camel_folder_dup_description (CamelFolder *folder
); void camel_folder_set_description (CamelFolder *folder
,const gchar *description
); CamelMessageFlags camel_folder_get_permanent_flags (CamelFolder *folder
); CamelMessageFlags camel_folder_get_message_flags (CamelFolder *folder
,const gchar *uid
); gboolean camel_folder_set_message_flags (CamelFolder *folder
,const gchar *uid
,CamelMessageFlags flags
,CamelMessageFlags set
); gboolean camel_folder_get_message_user_flag (CamelFolder *folder
,const gchar *uid
,const gchar *name
); void camel_folder_set_message_user_flag (CamelFolder *folder
,const gchar *uid
,const gchar *name
,gboolean value
); const gchar * camel_folder_get_message_user_tag (CamelFolder *folder
,const gchar *uid
,const gchar *name
); void camel_folder_set_message_user_tag (CamelFolder *folder
,const gchar *uid
,const gchar *name
,const gchar *value
); gboolean camel_folder_has_summary_capability (CamelFolder *folder
); gint camel_folder_get_message_count (CamelFolder *folder
); gint camel_folder_get_unread_message_count (CamelFolder *folder
); gint camel_folder_get_deleted_message_count (CamelFolder *folder
); GPtrArray * camel_folder_get_summary (CamelFolder *folder
); void camel_folder_free_summary (CamelFolder *folder
,GPtrArray *array
); #define camel_folder_delete_message (folder, uid) GPtrArray * camel_folder_get_uids (CamelFolder *folder
); void camel_folder_free_uids (CamelFolder *folder
,GPtrArray *array
); GPtrArray * camel_folder_get_uncached_uids (CamelFolder *folder
,GPtrArray *uids
,GError **error
); gint camel_folder_cmp_uids (CamelFolder *folder
,const gchar *uid1
,const gchar *uid2
); void camel_folder_sort_uids (CamelFolder *folder
,GPtrArray *uids
); GPtrArray * camel_folder_search_by_expression (CamelFolder *folder
,const gchar *expr
,GCancellable *cancellable
,GError **error
); GPtrArray * camel_folder_search_by_uids (CamelFolder *folder
,const gchar *expr
,GPtrArray *uids
,GCancellable *cancellable
,GError **error
); void camel_folder_search_free (CamelFolder *folder
,GPtrArray *result
); guint32 camel_folder_count_by_expression (CamelFolder *folder
,const gchar *expression
,GCancellable *cancellable
,GError **error
); CamelMessageInfo * camel_folder_get_message_info (CamelFolder *folder
,const gchar *uid
); void camel_folder_free_message_info (CamelFolder *folder
,CamelMessageInfo *info
); void camel_folder_ref_message_info (CamelFolder *folder
,CamelMessageInfo *info
); void camel_folder_delete (CamelFolder *folder
); void camel_folder_rename (CamelFolder *folder
,const gchar *new_name
); void camel_folder_changed (CamelFolder *folder
,CamelFolderChangeInfo *changes
); void camel_folder_freeze (CamelFolder *folder
); void camel_folder_thaw (CamelFolder *folder
); gboolean camel_folder_is_frozen (CamelFolder *folder
); gint camel_folder_get_frozen_count (CamelFolder *folder
); CamelFolderQuotaInfo * camel_folder_quota_info_new (const gchar *name
,guint64 used
,guint64 total
); CamelFolderQuotaInfo * camel_folder_quota_info_clone (const CamelFolderQuotaInfo *info
); void camel_folder_quota_info_free (CamelFolderQuotaInfo *info
); void camel_folder_free_nop (CamelFolder *folder
,GPtrArray *array
); void camel_folder_free_shallow (CamelFolder *folder
,GPtrArray *array
); void camel_folder_free_deep (CamelFolder *folder
,GPtrArray *array
); gchar * camel_folder_get_filename (CamelFolder *folder
,const gchar *uid
,GError **error
); gboolean camel_folder_append_message_sync (CamelFolder *folder
,CamelMimeMessage *message
,CamelMessageInfo *info
,gchar **appended_uid
,GCancellable *cancellable
,GError **error
); void camel_folder_append_message (CamelFolder *folder
,CamelMimeMessage *message
,CamelMessageInfo *info
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_append_message_finish (CamelFolder *folder
,GAsyncResult *result
,gchar **appended_uid
,GError **error
); gboolean camel_folder_expunge_sync (CamelFolder *folder
,GCancellable *cancellable
,GError **error
); void camel_folder_expunge (CamelFolder *folder
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_expunge_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); enum CamelFetchType; gboolean camel_folder_fetch_messages_sync (CamelFolder *folder
,CamelFetchType type
,gint limit
,GCancellable *cancellable
,GError **error
); void camel_folder_fetch_messages (CamelFolder *folder
,CamelFetchType type
,gint limit
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_fetch_messages_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); CamelMimeMessage * camel_folder_get_message_sync (CamelFolder *folder
,const gchar *message_uid
,GCancellable *cancellable
,GError **error
); void camel_folder_get_message (CamelFolder *folder
,const gchar *message_uid
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); CamelMimeMessage * camel_folder_get_message_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); CamelFolderQuotaInfo * camel_folder_get_quota_info_sync (CamelFolder *folder
,GCancellable *cancellable
,GError **error
); void camel_folder_get_quota_info (CamelFolder *folder
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); CamelFolderQuotaInfo * camel_folder_get_quota_info_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); gboolean camel_folder_purge_message_cache_sync (CamelFolder *folder
,gchar *start_uid
,gchar *end_uid
,GCancellable *cancellable
,GError **error
); void camel_folder_purge_message_cache (CamelFolder *folder
,gchar *start_uid
,gchar *end_uid
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_purge_message_cache_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); gboolean camel_folder_refresh_info_sync (CamelFolder *folder
,GCancellable *cancellable
,GError **error
); void camel_folder_refresh_info (CamelFolder *folder
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_refresh_info_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); gboolean camel_folder_synchronize_sync (CamelFolder *folder
,gboolean expunge
,GCancellable *cancellable
,GError **error
); void camel_folder_synchronize (CamelFolder *folder
,gboolean expunge
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_synchronize_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); gboolean camel_folder_synchronize_message_sync (CamelFolder *folder
,const gchar *message_uid
,GCancellable *cancellable
,GError **error
); void camel_folder_synchronize_message (CamelFolder *folder
,const gchar *message_uid
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_synchronize_message_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
); gboolean camel_folder_transfer_messages_to_sync (CamelFolder *source
,GPtrArray *message_uids
,CamelFolder *destination
,gboolean delete_originals
,GPtrArray **transferred_uids
,GCancellable *cancellable
,GError **error
); void camel_folder_transfer_messages_to (CamelFolder *source
,GPtrArray *message_uids
,CamelFolder *destination
,gboolean delete_originals
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); gboolean camel_folder_transfer_messages_to_finish (CamelFolder *source
,GAsyncResult *result
,GPtrArray **transferred_uids
,GError **error
); CamelFolderChangeInfo * camel_folder_change_info_new (void
); void camel_folder_change_info_clear (CamelFolderChangeInfo *info
); void camel_folder_change_info_free (CamelFolderChangeInfo *info
); gboolean camel_folder_change_info_changed (CamelFolderChangeInfo *info
); void camel_folder_change_info_add_source (CamelFolderChangeInfo *info
,const gchar *uid
); void camel_folder_change_info_add_source_list (CamelFolderChangeInfo *info
,const GPtrArray *list
); void camel_folder_change_info_add_update (CamelFolderChangeInfo *info
,const gchar *uid
); void camel_folder_change_info_add_update_list (CamelFolderChangeInfo *info
,const GPtrArray *list
); void camel_folder_change_info_build_diff (CamelFolderChangeInfo *info
); void camel_folder_change_info_cat (CamelFolderChangeInfo *info
,CamelFolderChangeInfo *src
); void camel_folder_change_info_add_uid (CamelFolderChangeInfo *info
,const gchar *uid
); void camel_folder_change_info_remove_uid (CamelFolderChangeInfo *info
,const gchar *uid
); void camel_folder_change_info_change_uid (CamelFolderChangeInfo *info
,const gchar *uid
); void camel_folder_change_info_recent_uid (CamelFolderChangeInfo *info
,const gchar *uid
); enum CamelFolderLock; void camel_folder_lock (CamelFolder *folder
,CamelFolderLock lock
); void camel_folder_unlock (CamelFolder *folder
,CamelFolderLock lock
);
GObject +----CamelObject +----CamelFolder +----CamelDiscoFolder +----CamelOfflineFolder +----CamelVeeFolder
"description" gchar* : Read / Write / Construct "display-name" gchar* : Read / Write / Construct "full-name" gchar* : Read / Write / Construct "parent-store" CamelStore* : Read / Write / Construct Only
typedef enum { /*< flags >*/ CAMEL_FOLDER_HAS_SUMMARY_CAPABILITY = 1 << 0, CAMEL_FOLDER_FILTER_RECENT = 1 << 2, CAMEL_FOLDER_HAS_BEEN_DELETED = 1 << 3, CAMEL_FOLDER_IS_TRASH = 1 << 4, CAMEL_FOLDER_IS_JUNK = 1 << 5, CAMEL_FOLDER_FILTER_JUNK = 1 << 6 } CamelFolderFlags;
typedef enum { CAMEL_FOLDER_ERROR_INVALID, CAMEL_FOLDER_ERROR_INVALID_STATE, CAMEL_FOLDER_ERROR_NON_EMPTY, CAMEL_FOLDER_ERROR_NON_UID, CAMEL_FOLDER_ERROR_INSUFFICIENT_PERMISSION, CAMEL_FOLDER_ERROR_INVALID_PATH, CAMEL_FOLDER_ERROR_INVALID_UID, CAMEL_FOLDER_ERROR_SUMMARY_INVALID } CamelFolderError;
Since 2.32
struct CamelFolderChangeInfo { GPtrArray *uid_added; GPtrArray *uid_removed; GPtrArray *uid_changed; GPtrArray *uid_recent; CamelFolderChangeInfoPrivate *priv; };
struct CamelFolderQuotaInfo { gchar *name; guint64 used; guint64 total; struct _CamelFolderQuotaInfo *next; };
Since 2.24
void camel_folder_set_lock_async (CamelFolder *folder
,gboolean skip_folder_lock
);
FIXME Document me!
|
a CamelFolder |
Since 2.30
struct _CamelStore * camel_folder_get_parent_store (CamelFolder *folder
);
|
a CamelFolder |
Returns : |
the parent CamelStore of the folder |
const gchar * camel_folder_get_full_name (CamelFolder *folder
);
Returns the fully qualified name of the folder.
|
a CamelFolder |
Returns : |
the fully qualified name of the folder |
gchar * camel_folder_dup_full_name (CamelFolder *folder
);
Thread-safe variation of camel_folder_get_full_name()
.
Use this function when accessing folder
from multiple threads.
The returned string should be freed with g_free()
when no longer needed.
|
a CamelFolder |
Returns : |
a newly-allocated copy of "full-name" |
Since 3.8
void camel_folder_set_full_name (CamelFolder *folder
,const gchar *full_name
);
Sets the fully qualified name of the folder.
|
a CamelFolder |
|
a fully qualified name for the folder |
Since 2.32
const gchar * camel_folder_get_display_name (CamelFolder *folder
);
Returns the display name for the folder. The fully qualified name
can be obtained with camel_folder_get_full_name()
.
|
a CamelFolder |
Returns : |
the display name of the folder |
Since 3.2
gchar * camel_folder_dup_display_name (CamelFolder *folder
);
Thread-safe variation of camel_folder_get_display_name()
.
Use this function when accessing folder
from multiple threads.
The returned string should be freed with g_free()
when no longer needed.
|
a CamelFolder |
Returns : |
a newly-allocated copy of "display-name" |
Since 3.8
void camel_folder_set_display_name (CamelFolder *folder
,const gchar *display_name
);
Sets the display name for the folder.
|
a CamelFolder |
|
a display name for the folder |
Since 3.2
const gchar * camel_folder_get_description (CamelFolder *folder
);
Returns a description of the folder suitable for displaying to the user.
|
a CamelFolder |
Returns : |
a description of the folder |
Since 2.32
gchar * camel_folder_dup_description (CamelFolder *folder
);
Thread-safe variation of camel_folder_get_description()
.
Use this function when accessing folder
from multiple threads.
The returned string should be freed with g_free()
when no longer needed.
|
a CamelFolder |
Returns : |
a newly-allocated copy of "description" |
Since 3.8
void camel_folder_set_description (CamelFolder *folder
,const gchar *description
);
Sets a description of the folder suitable for displaying to the user.
|
a CamelFolder |
|
a description of the folder |
Since 2.32
CamelMessageFlags camel_folder_get_permanent_flags (CamelFolder *folder
);
|
a CamelFolder |
Returns : |
the set of CamelMessageFlags that can be permanently stored on a message between sessions. If it includes CAMEL_FLAG_USER, then user-defined flags will be remembered. |
CamelMessageFlags camel_folder_get_message_flags (CamelFolder *folder
,const gchar *uid
);
camel_folder_get_message_flags
is deprecated and should not be used in newly-written code. Use camel_folder_get_message_info()
instead.
|
a CamelFolder |
|
the UID of a message in folder
|
Returns : |
the CamelMessageFlags that are set on the indicated message. |
gboolean camel_folder_set_message_flags (CamelFolder *folder
,const gchar *uid
,CamelMessageFlags flags
,CamelMessageFlags set
);
camel_folder_set_message_flags
is deprecated and should not be used in newly-written code. Use camel_message_info_set_flags()
on the message info directly
(when it works)
Sets those flags specified by flags
to the values specified by set
on the indicated message. (This may or may not persist after the
folder or store is closed. See camel_folder_get_permanent_flags()
)
E.g. to set the deleted flag and clear the draft flag, use camel_folder_set_message_flags (folder, uid, CAMEL_MESSAGE_DELETED|CAMEL_MESSAGE_DRAFT, CAMEL_MESSAGE_DELETED);
|
a CamelFolder |
|
the UID of a message in folder
|
|
a set of CamelMessageFlag values to set |
|
the mask of values in flags to use. |
Returns : |
TRUE if the flags were changed or FALSE otherwise |
gboolean camel_folder_get_message_user_flag (CamelFolder *folder
,const gchar *uid
,const gchar *name
);
camel_folder_get_message_user_flag
is deprecated and should not be used in newly-written code. Use camel_message_info_get_user_flag()
on the message
info directly
|
a CamelFolder |
|
the UID of a message in folder
|
|
the name of a user flag |
Returns : |
TRUE if the given user flag is set on the message or
FALSE otherwise |
void camel_folder_set_message_user_flag (CamelFolder *folder
,const gchar *uid
,const gchar *name
,gboolean value
);
camel_folder_set_message_user_flag
is deprecated and should not be used in newly-written code. Use camel_message_info_set_user_flag()
on the
CamelMessageInfo directly (when it works)
Sets the user flag specified by name
to the value specified by value
on the indicated message. (This may or may not persist after the
folder or store is closed. See camel_folder_get_permanent_flags()
)
|
a CamelFolder |
|
the UID of a message in folder
|
|
the name of the user flag to set |
|
the value to set it to |
const gchar * camel_folder_get_message_user_tag (CamelFolder *folder
,const gchar *uid
,const gchar *name
);
camel_folder_get_message_user_tag
is deprecated and should not be used in newly-written code. Use camel_message_info_get_user_tag()
on the
CamelMessageInfo directly.
|
a CamelFolder |
|
the UID of a message in folder
|
|
the name of a user tag |
Returns : |
the value of the user tag |
void camel_folder_set_message_user_tag (CamelFolder *folder
,const gchar *uid
,const gchar *name
,const gchar *value
);
camel_folder_set_message_user_tag
is deprecated and should not be used in newly-written code. Use camel_message_info_set_user_tag()
on the
CamelMessageInfo directly (when it works).
Sets the user tag specified by name
to the value specified by value
on the indicated message. (This may or may not persist after the
folder or store is closed. See camel_folder_get_permanent_flags()
)
|
a CamelFolder |
|
the UID of a message in folder
|
|
the name of the user tag to set |
|
the value to set it to |
gboolean camel_folder_has_summary_capability (CamelFolder *folder
);
Get whether or not the folder has a summary.
|
a CamelFolder |
Returns : |
TRUE if a summary is available or FALSE otherwise |
gint camel_folder_get_message_count (CamelFolder *folder
);
|
a CamelFolder |
Returns : |
the number of messages in the folder, or -1 if unknown |
gint camel_folder_get_unread_message_count
(CamelFolder *folder
);
camel_folder_get_unread_message_count
is deprecated and should not be used in newly-written code. use camel_object_get()
instead.
|
a CamelFolder |
Returns : |
the number of unread messages in the folder, or -1 if
unknown |
gint camel_folder_get_deleted_message_count
(CamelFolder *folder
);
|
a CamelFolder |
Returns : |
the number of deleted messages in the folder, or -1 if
unknown |
GPtrArray * camel_folder_get_summary (CamelFolder *folder
);
This returns the summary information for the folder. This array
should not be modified, and must be freed with
camel_folder_free_summary()
.
|
a CamelFolder |
Returns : |
an array of CamelMessageInfo |
void camel_folder_free_summary (CamelFolder *folder
,GPtrArray *array
);
Frees the summary array returned by camel_folder_get_summary()
.
|
a CamelFolder |
|
the summary array to free |
GPtrArray * camel_folder_get_uids (CamelFolder *folder
);
Get the list of UIDs available in a folder. This routine is useful
for finding what messages are available when the folder does not
support summaries. The returned array should not be modified, and
must be freed by passing it to camel_folder_free_uids()
.
|
a CamelFolder |
Returns : |
a GPtrArray of UIDs corresponding to the messages available in the folder |
void camel_folder_free_uids (CamelFolder *folder
,GPtrArray *array
);
Frees the array of UIDs returned by camel_folder_get_uids()
.
|
a CamelFolder |
|
the array of uids to free |
GPtrArray * camel_folder_get_uncached_uids (CamelFolder *folder
,GPtrArray *uids
,GError **error
);
|
a CamelFolder |
|
the array of uids to filter down to uncached ones. |
Returns : |
the known-uncached uids from a list of uids. It may return uids
which are locally cached but should never filter out a uid which is not
locally cached. Free the result by called camel_folder_free_uids() .
Frees the array of UIDs returned by camel_folder_get_uids() . |
Since 2.26
gint camel_folder_cmp_uids (CamelFolder *folder
,const gchar *uid1
,const gchar *uid2
);
Compares two uids. The return value meaning is the same as in any other compare function.
Note that the default compare function expects a decimal number at the beginning of a uid, thus if provider uses different uid values, then it should subclass this function.
|
a CamelFolder |
|
The first uid. |
|
the second uid. |
Since 2.28
void camel_folder_sort_uids (CamelFolder *folder
,GPtrArray *uids
);
Sorts the array of UIDs.
|
a CamelFolder |
|
array of uids |
Since 2.24
GPtrArray * camel_folder_search_by_expression (CamelFolder *folder
,const gchar *expr
,GCancellable *cancellable
,GError **error
);
Searches the folder for messages matching the given search expression.
|
a CamelFolder |
|
a search expression |
|
a GCancellable |
|
return location for a GError, or NULL
|
Returns : |
a GPtrArray of uids of matching messages. The caller must free the list and each of the elements when it is done. |
GPtrArray * camel_folder_search_by_uids (CamelFolder *folder
,const gchar *expr
,GPtrArray *uids
,GCancellable *cancellable
,GError **error
);
Search a subset of uid's for an expression match.
|
a CamelFolder |
|
search expression |
|
array of uid's to match against. |
|
a GCancellable |
|
return location for a GError, or NULL
|
Returns : |
a GPtrArray of uids of matching messages. The caller must free the list and each of the elements when it is done. |
void camel_folder_search_free (CamelFolder *folder
,GPtrArray *result
);
Free the result of a search as gotten by camel_folder_search()
or
camel_folder_search_by_uids()
.
|
a CamelFolder |
|
search results to free |
guint32 camel_folder_count_by_expression (CamelFolder *folder
,const gchar *expression
,GCancellable *cancellable
,GError **error
);
Searches the folder for count of messages matching the given search expression.
|
a CamelFolder |
|
a search expression |
|
a GCancellable |
|
return location for a GError, or NULL
|
Returns : |
an interger |
Since 2.26
CamelMessageInfo * camel_folder_get_message_info (CamelFolder *folder
,const gchar *uid
);
Retrieve the CamelMessageInfo for the specified uid
. This return
must be freed using camel_folder_free_message_info()
.
|
a CamelFolder |
|
the uid of a message |
Returns : |
the summary information for the indicated message, or NULL
if the uid does not exist |
void camel_folder_free_message_info (CamelFolder *folder
,CamelMessageInfo *info
);
Free (unref) a CamelMessageInfo, previously obtained with
camel_folder_get_message_info()
.
|
a CamelFolder |
|
a CamelMessageInfo |
void camel_folder_ref_message_info (CamelFolder *folder
,CamelMessageInfo *info
);
camel_folder_ref_message_info
is deprecated and should not be used in newly-written code. Use camel_message_info_ref()
directly.
Ref a CamelMessageInfo, previously obtained with
camel_folder_get_message_info()
.
|
a CamelFolder |
|
a CamelMessageInfo |
void camel_folder_delete (CamelFolder *folder
);
Marks folder
as deleted and performs any required cleanup.
This also emits the "deleted" signal from an idle source on the main loop. The idle source's priority is G_PRIORITY_HIGH_IDLE.
|
a CamelFolder |
void camel_folder_rename (CamelFolder *folder
,const gchar *new_name
);
Marks folder
as renamed.
This also emits the "renamed" signal from an idle source on the main loop. The idle source's priority is G_PRIORITY_HIGH_IDLE.
NOTE: This is an internal function used by camel stores, no locking is performed on the folder.
|
a CamelFolder |
|
new name for the folder |
void camel_folder_changed (CamelFolder *folder
,CamelFolderChangeInfo *changes
);
Emits the "changed" signal from an idle source on the main loop. The idle source's priority is G_PRIORITY_LOW.
|
a CamelFolder |
|
change information for folder
|
Since 2.32
void camel_folder_freeze (CamelFolder *folder
);
Freezes the folder so that a series of operation can be performed
without "folder_changed" signals being emitted. When the folder is
later thawed with camel_folder_thaw()
, the suppressed signals will
be emitted.
|
a CamelFolder |
void camel_folder_thaw (CamelFolder *folder
);
Thaws the folder and emits any pending folder_changed signals.
|
a CamelFolder |
gboolean camel_folder_is_frozen (CamelFolder *folder
);
|
a CamelFolder |
Returns : |
whether or not the folder is frozen |
gint camel_folder_get_frozen_count (CamelFolder *folder
);
|
a CamelFolder |
Since 2.32
CamelFolderQuotaInfo * camel_folder_quota_info_new (const gchar *name
,guint64 used
,guint64 total
);
|
Name of the quota. |
|
Current usage of the quota. |
|
Total available size of the quota. |
Returns : |
newly allocated CamelFolderQuotaInfo structure with initialized values based on the parameters, with next member set to NULL. |
Since 2.24
CamelFolderQuotaInfo * camel_folder_quota_info_clone (const CamelFolderQuotaInfo *info
);
Makes a copy of the given info and all next-s.
|
a CamelFolderQuotaInfo object to clone. |
Since 2.24
void camel_folder_quota_info_free (CamelFolderQuotaInfo *info
);
Frees this and all next objects.
|
a CamelFolderQuotaInfo object to free. |
Since 2.24
void camel_folder_free_nop (CamelFolder *folder
,GPtrArray *array
);
"Frees" the provided array by doing nothing. Used by CamelFolder subclasses as an implementation for free_uids, or free_summary when the returned array is "static" information and should not be freed.
|
a CamelFolder |
|
an array of uids or CamelMessageInfo |
void camel_folder_free_shallow (CamelFolder *folder
,GPtrArray *array
);
Frees the provided array but not its contents. Used by CamelFolder subclasses as an implementation for free_uids or free_summary when the returned array needs to be freed but its contents come from "static" information.
|
a CamelFolder |
|
an array of uids or CamelMessageInfo |
void camel_folder_free_deep (CamelFolder *folder
,GPtrArray *array
);
Frees the provided array and its contents. Used by CamelFolder subclasses as an implementation for free_uids when the provided information was created explicitly by the corresponding get_ call.
|
a CamelFolder |
|
an array of uids |
gchar * camel_folder_get_filename (CamelFolder *folder
,const gchar *uid
,GError **error
);
Since 2.26
gboolean camel_folder_append_message_sync (CamelFolder *folder
,CamelMimeMessage *message
,CamelMessageInfo *info
,gchar **appended_uid
,GCancellable *cancellable
,GError **error
);
Appends message
to folder
. Only the flag and tag data from info
are used. If info
is NULL
, no flags or tags will be set.
|
a CamelFolder |
|
a CamelMimeMessage |
|
a CamelMessageInfo with additional flags/etc to set on the
new message, or NULL
|
|
if non-NULL , the UID of the appended message will
be returned here, if it is known |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
void camel_folder_append_message (CamelFolder *folder
,CamelMimeMessage *message
,CamelMessageInfo *info
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Appends message
to folder
asynchronously. Only the flag and tag data
from info
are used. If info
is NULL
, no flags or tags will be set.
When the operation is finished, callback
will be called. You can
then call camel_folder_append_message_finish()
to get the result of
the operation.
|
a CamelMimeMessage |
|
a CamelMessageInfo with additional flags/etc to set on the
new message, or NULL
|
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.0
gboolean camel_folder_append_message_finish (CamelFolder *folder
,GAsyncResult *result
,gchar **appended_uid
,GError **error
);
Finishes the operation started with camel_folder_append_message_finish()
.
|
a CamelFolder |
|
a GAsyncResult |
|
if non-NULL , the UID of the appended message will
be returned here, if it is known |
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
gboolean camel_folder_expunge_sync (CamelFolder *folder
,GCancellable *cancellable
,GError **error
);
Deletes messages which have been marked as "DELETED".
|
a CamelFolder |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
void camel_folder_expunge (CamelFolder *folder
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously deletes messages which have been marked as "DELETED".
When the operation is finished, callback
will be called. You can then
call camel_folder_expunge_finish()
to get the result of the operation.
|
a CamelFolder |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.0
gboolean camel_folder_expunge_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_expunge()
.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
typedef enum { CAMEL_FETCH_OLD_MESSAGES, CAMEL_FETCH_NEW_MESSAGES } CamelFetchType;
Since 3.4
gboolean camel_folder_fetch_messages_sync (CamelFolder *folder
,CamelFetchType type
,gint limit
,GCancellable *cancellable
,GError **error
);
Downloads old or new specified number of messages from the server. It is
optimized for mobile client usage. Desktop clients should keep away from
this api and use camel_folder_refresh_info
.
|
a CamelFolder |
|
Type to specify fetch old or new messages. limit: Limit to specify the number of messages to download. |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE if there are more messages to fetch,
FALSE if there are no more messages |
Since 3.4
void camel_folder_fetch_messages (CamelFolder *folder
,CamelFetchType type
,gint limit
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously download new or old messages from the server. It is assumes that the client has only a window of interested messages of what server has. And old/new type helps to expand that window.
type = CAMEL_FETCH_OLD_MESSAGES: Downloads messages older than what the client already has. type = CAMEL_FETCH_NEW_MESSAGES: Downloads messages newer than what the client already has.
When the operation is finished, callback
will be called. You can then
call camel_folder_fetch_messages_finish()
to get the result of the operation.
|
a CamelFolder |
|
Type to specify fetch old or new messages. limit: Limit to specify the number of messages to download. |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.4
gboolean camel_folder_fetch_messages_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_fetch_messages()
.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError, or NULL
|
Returns : |
TRUE if there are more messages to fetch,
FALSE if there are no more messages |
Since 3.4
CamelMimeMessage * camel_folder_get_message_sync (CamelFolder *folder
,const gchar *message_uid
,GCancellable *cancellable
,GError **error
);
Gets the message corresponding to message_uid
from folder
.
|
a CamelFolder |
|
the message UID |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
a CamelMimeMessage corresponding to the requested UID |
Since 3.0
void camel_folder_get_message (CamelFolder *folder
,const gchar *message_uid
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously gets the message corresponding to message_uid
from folder
.
When the operation is finished, callback
will be called. You can then
call camel_folder_get_message_finish()
to get the result of the operation.
|
a CamelFolder |
|
the message UID |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.0
CamelMimeMessage * camel_folder_get_message_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_get_message()
.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError or NULL
|
Returns : |
a CamelMimeMessage corresponding to the requested UID |
Since 3.0
CamelFolderQuotaInfo * camel_folder_get_quota_info_sync (CamelFolder *folder
,GCancellable *cancellable
,GError **error
);
Gets a list of known quotas for folder
. Free the returned
CamelFolderQuotaInfo struct with camel_folder_quota_info_free()
.
If quotas are not supported for folder
, the function returns NULL
and sets error
to G_IO_ERROR_NOT_SUPPORTED.
|
a CamelFolder |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
a CamelFolderQuotaInfo, or NULL
|
Since 3.2
void camel_folder_get_quota_info (CamelFolder *folder
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously gets a list of known quotas for folder
.
When the operation is finished, callback
will be called. You can
then call camel_folder_get_quota_info_finish()
to get the result of
the operation.
|
a CamelFolder |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.2
CamelFolderQuotaInfo * camel_folder_get_quota_info_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_get_quota_info()
.
Free the returned CamelFolderQuotaInfo struct with
camel_folder_quota_info_free()
.
If quotas are not supported for folder
, the function returns NULL
and sets error
to G_IO_ERROR_NOT_SUPPORTED.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError or NULL
|
Returns : |
a CamelFolderQuotaInfo, or NULL
|
Since 3.2
gboolean camel_folder_purge_message_cache_sync (CamelFolder *folder
,gchar *start_uid
,gchar *end_uid
,GCancellable *cancellable
,GError **error
);
Delete the local cache of all messages between these uids.
|
a CamelFolder |
|
the start message UID |
|
the end message UID |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE if success, FALSE if there are any errors. |
Since 3.4
void camel_folder_purge_message_cache (CamelFolder *folder
,gchar *start_uid
,gchar *end_uid
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Delete the local cache of all messages between these uids.
When the operation is finished, callback
will be called. You can then
call camel_folder_purge_message_cache_finish()
to get the result of the
operation.
|
a CamelFolder |
|
the start message UID |
|
the end message UID |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.4
gboolean camel_folder_purge_message_cache_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_purge_message_cache()
.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError, or NULL
|
Returns : |
TRUE if cache is deleted, FALSE if there are any errors |
Since 3.4
gboolean camel_folder_refresh_info_sync (CamelFolder *folder
,GCancellable *cancellable
,GError **error
);
Synchronizes a folder's summary with its backing store.
|
a CamelFolder |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
void camel_folder_refresh_info (CamelFolder *folder
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously synchronizes a folder's summary with its backing store.
When the operation is finished, callback
will be called. You can then
call camel_folder_refresh_info_finish()
to get the result of the operation.
|
a CamelFolder |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.2
gboolean camel_folder_refresh_info_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_refresh_info()
.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.2
gboolean camel_folder_synchronize_sync (CamelFolder *folder
,gboolean expunge
,GCancellable *cancellable
,GError **error
);
Synchronizes any changes that have been made to folder
to its
backing store, optionally expunging deleted messages as well.
|
a CamelFolder |
|
whether to expunge after synchronizing |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
void camel_folder_synchronize (CamelFolder *folder
,gboolean expunge
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Synchronizes any changes that have been made to folder
to its backing
store asynchronously, optionally expunging deleted messages as well.
When the operation is finished, callback
will be called. You can then
call camel_folder_synchronize_finish()
to get the result of the operation.
|
a CamelFolder |
|
whether to expunge after synchronizing |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.0
gboolean camel_folder_synchronize_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_synchronize()
.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError, or NULL
|
Returns : |
TRUE on sucess, FALSE on error |
Since 3.0
gboolean camel_folder_synchronize_message_sync (CamelFolder *folder
,const gchar *message_uid
,GCancellable *cancellable
,GError **error
);
Ensure that a message identified by message_uid
has been synchronized in
folder
so that calling camel_folder_get_message()
on it later will work
in offline mode.
|
a CamelFolder |
|
a message UID |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
void camel_folder_synchronize_message (CamelFolder *folder
,const gchar *message_uid
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
gboolean camel_folder_synchronize_message_finish (CamelFolder *folder
,GAsyncResult *result
,GError **error
);
Finishes the operation started with camel_folder_synchronize_message()
.
|
a CamelFolder |
|
a GAsyncResult |
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
gboolean camel_folder_transfer_messages_to_sync (CamelFolder *source
,GPtrArray *message_uids
,CamelFolder *destination
,gboolean delete_originals
,GPtrArray **transferred_uids
,GCancellable *cancellable
,GError **error
);
Copies or moves messages from one folder to another. If the
source
and destination
folders have the same parent_store, this
may be more efficient than using camel_folder_append_message_sync()
.
|
the source CamelFolder |
|
message UIDs in source
|
|
the destination CamelFolder |
|
whether or not to delete the original messages |
|
if non-NULL , the UIDs of the resulting messages
in destination will be stored here, if known. |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on failure |
Since 3.0
void camel_folder_transfer_messages_to (CamelFolder *source
,GPtrArray *message_uids
,CamelFolder *destination
,gboolean delete_originals
,gint io_priority
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously copies or moves messages from one folder to another.
If the source
or destination
folders have the same parent store,
this may be more efficient than using camel_folder_append_message()
.
When the operation is finished, callback
will be called. You can then
call camel_folder_transfer_messages_to_finish()
to get the result of the
operation.
|
the source CamelFolder |
|
message UIDs in source
|
|
the destination CamelFolder |
|
whether or not to delete the original messages |
|
the I/O priority of the request |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
Since 3.0
gboolean camel_folder_transfer_messages_to_finish (CamelFolder *source
,GAsyncResult *result
,GPtrArray **transferred_uids
,GError **error
);
Finishes the operation started with camel_folder_transfer_messages_to()
.
|
a CamelFolder |
|
a GAsyncResult |
|
if non-NULL , the UIDs of the resulting messages
in destination will be stored here, if known. |
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on error |
Since 3.0
CamelFolderChangeInfo * camel_folder_change_info_new (void
);
Create a new folder change info structure.
Change info structures are not MT-SAFE and must be locked for exclusive access externally.
Returns : |
a new CamelFolderChangeInfo |
void camel_folder_change_info_clear (CamelFolderChangeInfo *info
);
Empty out the change info; called after changes have been processed.
|
a CamelFolderChangeInfo |
void camel_folder_change_info_free (CamelFolderChangeInfo *info
);
Free memory associated with the folder change info lists.
|
a CamelFolderChangeInfo |
gboolean camel_folder_change_info_changed (CamelFolderChangeInfo *info
);
Gets whether or not there have been any changes.
|
a CamelFolderChangeInfo |
Returns : |
TRUE if the changeset contains any changes or FALSE
otherwise |
void camel_folder_change_info_add_source (CamelFolderChangeInfo *info
,const gchar *uid
);
Add a source uid for generating a changeset.
|
a CamelFolderChangeInfo |
|
a uid |
void camel_folder_change_info_add_source_list (CamelFolderChangeInfo *info
,const GPtrArray *list
);
Add a list of source uid's for generating a changeset.
|
a CamelFolderChangeInfo |
|
a list of uids |
void camel_folder_change_info_add_update (CamelFolderChangeInfo *info
,const gchar *uid
);
Add a uid from the updated list, used to generate a changeset diff.
|
a CamelFolderChangeInfo |
|
a uid |
void camel_folder_change_info_add_update_list (CamelFolderChangeInfo *info
,const GPtrArray *list
);
Add a list of uid's from the updated list.
|
a CamelFolderChangeInfo |
|
a list of uids |
void camel_folder_change_info_build_diff (CamelFolderChangeInfo *info
);
Compare the source uid set to the updated uid set and generate the differences into the added and removed lists.
|
a CamelFolderChangeInfo |
void camel_folder_change_info_cat (CamelFolderChangeInfo *info
,CamelFolderChangeInfo *src
);
Concatenate one change info onto antoher. Can be used to copy them too.
|
a CamelFolderChangeInfo to append to |
|
a CamelFolderChangeInfo to append from |
void camel_folder_change_info_add_uid (CamelFolderChangeInfo *info
,const gchar *uid
);
Add a new uid to the changeinfo.
|
a CamelFolderChangeInfo |
|
a uid |
void camel_folder_change_info_remove_uid (CamelFolderChangeInfo *info
,const gchar *uid
);
Add a uid to the removed uid list.
|
a CamelFolderChangeInfo |
|
a uid |
void camel_folder_change_info_change_uid (CamelFolderChangeInfo *info
,const gchar *uid
);
Add a uid to the changed uid list.
|
a CamelFolderChangeInfo |
|
a uid |
void camel_folder_change_info_recent_uid (CamelFolderChangeInfo *info
,const gchar *uid
);
Add a recent uid to the changedinfo. This will also add the uid to the uid_filter array for potential filtering
|
a CamelFolderChangeInfo |
|
a uid |
typedef enum { CAMEL_FOLDER_CHANGE_LOCK, CAMEL_FOLDER_REC_LOCK } CamelFolderLock;
Since 2.32
void camel_folder_lock (CamelFolder *folder
,CamelFolderLock lock
);
Locks folder
's lock
. Unlock it with camel_folder_unlock()
.
|
a CamelFolder |
|
lock type to lock |
Since 2.32
void camel_folder_unlock (CamelFolder *folder
,CamelFolderLock lock
);
Unlocks folder
's lock
, previously locked with camel_folder_lock()
.
|
a CamelFolder |
|
lock type to unlock |
Since 2.32
"description"
property "description" gchar* : Read / Write / Construct
The folder's description.
Default value: NULL
"display-name"
property "display-name" gchar* : Read / Write / Construct
The folder's display name.
Default value: NULL
"full-name"
property "full-name" gchar* : Read / Write / Construct
The folder's fully qualified name.
Default value: NULL
"parent-store"
property"parent-store" CamelStore* : Read / Write / Construct Only
The CamelStore to which the folder belongs.
"changed"
signalvoid user_function (CamelFolder *folder,
gpointer arg1,
gpointer user_data) : Run First
|
the CamelFolder which emitted the signal |
|
user data set when the signal handler was connected. |
"deleted"
signalvoid user_function (CamelFolder *folder,
gpointer user_data) : Run First
|
the CamelFolder which emitted the signal |
|
user data set when the signal handler was connected. |
"renamed"
signalvoid user_function (CamelFolder *folder,
gchar *old_name,
gpointer user_data) : Run First
|
the CamelFolder which emitted the signal |
|
the previous folder name |
|
user data set when the signal handler was connected. |