Class
CamelFolder
Instance methods
camel_folder_append_message
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.
since: 3.0
camel_folder_append_message_finish
Finishes the operation started with camel_folder_append_message_finish().
since: 3.0
camel_folder_append_message_sync
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.
since: 3.0
camel_folder_changed
Emits the CamelFolder::changed signal from an idle source on the
main loop. The idle source’s priority is #G_PRIORITY_LOW.
since: 2.32
camel_folder_cmp_uids
Compares two uids. The return value meaning is the same as in any other compare function.
since: 2.28
camel_folder_dup_description
Thread-safe variation of camel_folder_get_description().
Use this function when accessing folder from multiple threads.
since: 3.8
camel_folder_dup_display_name
Thread-safe variation of camel_folder_get_display_name().
Use this function when accessing folder from multiple threads.
since: 3.8
camel_folder_dup_full_name
Thread-safe variation of camel_folder_get_full_name().
Use this function when accessing folder from multiple threads.
since: 3.8
camel_folder_dup_headers_sync
Reads headers of a message with the uid and returns it
in the out_headers. Free the headers with camel_name_value_array_free(),
when no longer needed.
unstable since: 3.58
camel_folder_dup_uids
Duplicates a list of UIDs available in the folder. Free the array
with g_ptr_array_unref(), when no longer needed.
unstable since: 3.58
camel_folder_dup_uncached_uids
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.
unstable since: 3.58
camel_folder_expunge
Asynchronously deletes messages which have been marked as “DELETED”.
since: 3.0
camel_folder_freeze
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.
camel_folder_get_description
Returns a description of the folder suitable for displaying to the user.
since: 2.32
camel_folder_get_display_name
Returns the display name for the folder. The fully qualified name can be obtained with camel_folder_get_full_name().
since: 3.2
camel_folder_get_folder_summary
Get the CamelFolderSummary if the backend actually supports it. The camel_folder_has_summary_capability() conveniently checks its availability.
since: 3.24
camel_folder_get_full_display_name
Similar to the camel_folder_get_full_name(), only returning
full path to the folder suitable for the display to a user.
since: 3.46
camel_folder_get_message
Asynchronously gets the message corresponding to message_uid from folder.
since: 3.0
camel_folder_get_message_cached
Gets the message corresponding to message_uid from the folder cache,
if available locally. This should not do any network I/O, only check
if message is already downloaded and return it quickly, not being
blocked by the folder’s lock. Returning NULL is not considered as
an error, it just means that the message is still to-be-downloaded.
since: 3.24
camel_folder_get_message_finish
Finishes the operation started with camel_folder_get_message().
since: 3.0
camel_folder_get_quota_info_finish
Finishes the operation started with camel_folder_get_quota_info().
Free the returned CamelFolderQuotaInfo struct with camel_folder_quota_info_free().
since: 3.2
camel_folder_get_quota_info_sync
Gets a list of known quotas for folder. Free the returned
CamelFolderQuotaInfo struct with camel_folder_quota_info_free().
since: 3.2
camel_folder_load_state
Loads properties with #CAMEL_FOLDER_PARAM_PERMANENT from a state file previously set by camel_folder_take_state_filename(). The function does nothing when no state file is set.
unstable since: 3.58
camel_folder_prepare_content_refresh
Lets the folder know that it should refresh its content
the next time from fresh. This is useful for remote accounts,
to fully re-check the folder content against the server.
since: 3.22
camel_folder_purge_message_cache
Delete the local cache of all messages between these uids.
since: 3.4
camel_folder_purge_message_cache_finish
Finishes the operation started with camel_folder_purge_message_cache().
since: 3.4
camel_folder_purge_message_cache_sync
Delete the local cache of all messages between these uids.
since: 3.4
camel_folder_refresh_info
Asynchronously synchronizes a folder’s summary with its backing store.
since: 3.2
camel_folder_refresh_info_finish
Finishes the operation started with camel_folder_refresh_info().
since: 3.2
camel_folder_save_state
Saves properties with #CAMEL_FOLDER_PARAM_PERMANENT into a state file previously set by camel_folder_take_state_filename(). The function does nothing when no state file is set.
unstable since: 3.58
camel_folder_search_body_sync
Search the folder for messages with body containing words.
The list of satisfying message UIDs is returned in the out_uids.
The result list can be empty, meaning no such message exists.
unstable since: 3.58
camel_folder_search_header_sync
Search the folder for messages with header header_name, which either contains the words or, when the words is empty or NULL, the header exists in the message.
The list of satisfying message UIDs is returned in the out_uids.
The result list can be empty, meaning no such message exists.
unstable since: 3.58
camel_folder_search_sync
Searches the folder for messages matching the given search expression.
unstable since: 3.58
camel_folder_set_description
Sets a description of the folder suitable for displaying to the user.
since: 2.32
camel_folder_set_lock_async
Sets whether folder locking (camel_folder_lock() and camel_folder_unlock())
should be used. When set to FALSE, the two functions do nothing and simply return.
since: 2.30
camel_folder_set_mark_seen
Sets whether the messages in this folder should be marked
as seen automatically. An inconsistent state means to use
global option.
since: 3.32
camel_folder_set_mark_seen_timeout
Sets the timeout in milliseconds for marking messages
as seen in this folder. Whether the timeout is used
depends on camel_folder_get_mark_seen().
since: 3.32
camel_folder_set_message_flags
Sets those flags specified by mask 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()).
camel_folder_synchronize
Synchronizes any changes that have been made to folder to its backing
store asynchronously, optionally expunging deleted messages as well.
since: 3.0
camel_folder_synchronize_finish
Finishes the operation started with camel_folder_synchronize().
since: 3.0
camel_folder_synchronize_message
Asynchronously 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.
since: 3.0
camel_folder_synchronize_message_finish
Finishes the operation started with camel_folder_synchronize_message().
since: 3.0
camel_folder_synchronize_message_sync
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.
since: 3.0
camel_folder_synchronize_sync
Synchronizes any changes that have been made to folder to its
backing store, optionally expunging deleted messages as well.
since: 3.0
camel_folder_take_folder_summary
Sets a CamelFolderSummary of the folder. It consumes the summary.
since: 3.24
camel_folder_transfer_messages_to
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().
since: 3.0
camel_folder_transfer_messages_to_finish
Finishes the operation started with camel_folder_transfer_messages_to().
since: 3.0
camel_folder_transfer_messages_to_sync
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().
since: 3.0
Properties
Camel.Folder:mark-seen
A CamelThreeState persistent option of the folder,
which can override global option to mark messages
as seen after certain interval.
since: 3.32
Signals
Signals inherited from GObject (1)
GObject::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.
Class structure
struct CamelFolderClass {
GObjectClass parent_class;
gint (* get_message_count) (
CamelFolder* folder
);
guint32 (* get_permanent_flags) (
CamelFolder* folder
);
guint32 (* get_message_flags) (
CamelFolder* folder,
const gchar* uid
);
gboolean (* set_message_flags) (
CamelFolder* folder,
const gchar* uid,
guint32 mask,
guint32 set
);
GPtrArray* (* dup_uids) (
CamelFolder* folder
);
gint (* cmp_uids) (
CamelFolder* folder,
const gchar* uid1,
const gchar* uid2
);
void (* sort_uids) (
CamelFolder* folder,
GPtrArray* uids
);
gboolean (* has_search_capability) (
CamelFolder* folder
);
CamelMessageInfo* (* get_message_info) (
CamelFolder* folder,
const gchar* uid
);
void (* delete_) (
CamelFolder* folder
);
void (* rename) (
CamelFolder* folder,
const gchar* new_name
);
void (* freeze) (
CamelFolder* folder
);
void (* thaw) (
CamelFolder* folder
);
gboolean (* is_frozen) (
CamelFolder* folder
);
GPtrArray* (* dup_uncached_uids) (
CamelFolder* folder,
GPtrArray* uids,
GError** error
);
gchar* (* get_filename) (
CamelFolder* folder,
const gchar* uid,
GError** error
);
CamelMimeMessage* (* get_message_cached) (
CamelFolder* folder,
const gchar* message_uid,
GCancellable* cancellable
);
gboolean (* append_message_sync) (
CamelFolder* folder,
CamelMimeMessage* message,
CamelMessageInfo* info,
gchar** appended_uid,
GCancellable* cancellable,
GError** error
);
gboolean (* expunge_sync) (
CamelFolder* folder,
GCancellable* cancellable,
GError** error
);
CamelMimeMessage* (* get_message_sync) (
CamelFolder* folder,
const gchar* message_uid,
GCancellable* cancellable,
GError** error
);
CamelFolderQuotaInfo* (* get_quota_info_sync) (
CamelFolder* folder,
GCancellable* cancellable,
GError** error
);
gboolean (* purge_message_cache_sync) (
CamelFolder* folder,
gchar* start_uid,
gchar* end_uid,
GCancellable* cancellable,
GError** error
);
gboolean (* refresh_info_sync) (
CamelFolder* folder,
GCancellable* cancellable,
GError** error
);
gboolean (* synchronize_sync) (
CamelFolder* folder,
gboolean expunge,
GCancellable* cancellable,
GError** error
);
gboolean (* synchronize_message_sync) (
CamelFolder* folder,
const gchar* message_uid,
GCancellable* cancellable,
GError** error
);
gboolean (* transfer_messages_to_sync) (
CamelFolder* source,
GPtrArray* message_uids,
CamelFolder* destination,
gboolean delete_originals,
GPtrArray** transferred_uids,
GCancellable* cancellable,
GError** error
);
void (* prepare_content_refresh) (
CamelFolder* folder
);
const gchar* (* get_full_display_name) (
CamelFolder* folder
);
gboolean (* dup_headers_sync) (
CamelFolder* folder,
const gchar* uid,
CamelNameValueArray** out_headers,
GCancellable* cancellable,
GError** error
);
gboolean (* search_sync) (
CamelFolder* folder,
const gchar* expression,
GPtrArray** out_uids,
GCancellable* cancellable,
GError** error
);
gboolean (* search_header_sync) (
CamelFolder* folder,
const gchar* header_name,
GPtrArray* words,
GPtrArray** out_uids,
GCancellable* cancellable,
GError** error
);
gboolean (* search_body_sync) (
CamelFolder* folder,
GPtrArray* words,
GPtrArray** out_uids,
GCancellable* cancellable,
GError** error
);
gpointer reserved_methods;
void (* changed) (
CamelFolder* folder,
CamelFolderChangeInfo* changes
);
void (* deleted) (
CamelFolder* folder
);
void (* renamed) (
CamelFolder* folder,
const gchar* old_name
);
gpointer reserved_signals;
}
No description available.
Class members
parent_class: GObjectClassNo description available.
get_message_count: gint (* get_message_count) ( CamelFolder* folder )No description available.
get_permanent_flags: guint32 (* get_permanent_flags) ( CamelFolder* folder )No description available.
get_message_flags: guint32 (* get_message_flags) ( CamelFolder* folder, const gchar* uid )No description available.
set_message_flags: gboolean (* set_message_flags) ( CamelFolder* folder, const gchar* uid, guint32 mask, guint32 set )No description available.
dup_uids: GPtrArray* (* dup_uids) ( CamelFolder* folder )No description available.
cmp_uids: gint (* cmp_uids) ( CamelFolder* folder, const gchar* uid1, const gchar* uid2 )No description available.
sort_uids: void (* sort_uids) ( CamelFolder* folder, GPtrArray* uids )No description available.
has_search_capability: gboolean (* has_search_capability) ( CamelFolder* folder )No description available.
get_message_info: CamelMessageInfo* (* get_message_info) ( CamelFolder* folder, const gchar* uid )No description available.
delete_: void (* delete_) ( CamelFolder* folder )No description available.
rename: void (* rename) ( CamelFolder* folder, const gchar* new_name )No description available.
freeze: void (* freeze) ( CamelFolder* folder )No description available.
thaw: void (* thaw) ( CamelFolder* folder )No description available.
is_frozen: gboolean (* is_frozen) ( CamelFolder* folder )No description available.
dup_uncached_uids: GPtrArray* (* dup_uncached_uids) ( CamelFolder* folder, GPtrArray* uids, GError** error )No description available.
get_filename: gchar* (* get_filename) ( CamelFolder* folder, const gchar* uid, GError** error )No description available.
get_message_cached: CamelMimeMessage* (* get_message_cached) ( CamelFolder* folder, const gchar* message_uid, GCancellable* cancellable )No description available.
append_message_sync: gboolean (* append_message_sync) ( CamelFolder* folder, CamelMimeMessage* message, CamelMessageInfo* info, gchar** appended_uid, GCancellable* cancellable, GError** error )No description available.
expunge_sync: gboolean (* expunge_sync) ( CamelFolder* folder, GCancellable* cancellable, GError** error )No description available.
get_message_sync: CamelMimeMessage* (* get_message_sync) ( CamelFolder* folder, const gchar* message_uid, GCancellable* cancellable, GError** error )No description available.
get_quota_info_sync: CamelFolderQuotaInfo* (* get_quota_info_sync) ( CamelFolder* folder, GCancellable* cancellable, GError** error )No description available.
purge_message_cache_sync: gboolean (* purge_message_cache_sync) ( CamelFolder* folder, gchar* start_uid, gchar* end_uid, GCancellable* cancellable, GError** error )No description available.
refresh_info_sync: gboolean (* refresh_info_sync) ( CamelFolder* folder, GCancellable* cancellable, GError** error )No description available.
synchronize_sync: gboolean (* synchronize_sync) ( CamelFolder* folder, gboolean expunge, GCancellable* cancellable, GError** error )No description available.
synchronize_message_sync: gboolean (* synchronize_message_sync) ( CamelFolder* folder, const gchar* message_uid, GCancellable* cancellable, GError** error )No description available.
transfer_messages_to_sync: gboolean (* transfer_messages_to_sync) ( CamelFolder* source, GPtrArray* message_uids, CamelFolder* destination, gboolean delete_originals, GPtrArray** transferred_uids, GCancellable* cancellable, GError** error )No description available.
prepare_content_refresh: void (* prepare_content_refresh) ( CamelFolder* folder )No description available.
get_full_display_name: const gchar* (* get_full_display_name) ( CamelFolder* folder )No description available.
dup_headers_sync: gboolean (* dup_headers_sync) ( CamelFolder* folder, const gchar* uid, CamelNameValueArray** out_headers, GCancellable* cancellable, GError** error )No description available.
search_sync: gboolean (* search_sync) ( CamelFolder* folder, const gchar* expression, GPtrArray** out_uids, GCancellable* cancellable, GError** error )No description available.
search_header_sync: gboolean (* search_header_sync) ( CamelFolder* folder, const gchar* header_name, GPtrArray* words, GPtrArray** out_uids, GCancellable* cancellable, GError** error )No description available.
search_body_sync: gboolean (* search_body_sync) ( CamelFolder* folder, GPtrArray* words, GPtrArray** out_uids, GCancellable* cancellable, GError** error )No description available.
reserved_methods: gpointerNo description available.
changed: void (* changed) ( CamelFolder* folder, CamelFolderChangeInfo* changes )No description available.
deleted: void (* deleted) ( CamelFolder* folder )No description available.
renamed: void (* renamed) ( CamelFolder* folder, const gchar* old_name )No description available.
reserved_signals: gpointerNo description available.
Virtual methods
Camel.FolderClass.append_message_sync
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.
since: 3.0
Camel.FolderClass.changed
Emits the CamelFolder::changed signal from an idle source on the
main loop. The idle source’s priority is #G_PRIORITY_LOW.
since: 2.32
Camel.FolderClass.cmp_uids
Compares two uids. The return value meaning is the same as in any other compare function.
since: 2.28
Camel.FolderClass.dup_headers_sync
Reads headers of a message with the uid and returns it
in the out_headers. Free the headers with camel_name_value_array_free(),
when no longer needed.
unstable since: 3.58
Camel.FolderClass.dup_uids
Duplicates a list of UIDs available in the folder. Free the array
with g_ptr_array_unref(), when no longer needed.
unstable since: 3.58
Camel.FolderClass.dup_uncached_uids
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.
unstable since: 3.58
Camel.FolderClass.freeze
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.
Camel.FolderClass.get_full_display_name
Similar to the camel_folder_get_full_name(), only returning
full path to the folder suitable for the display to a user.
since: 3.46
Camel.FolderClass.get_message_cached
Gets the message corresponding to message_uid from the folder cache,
if available locally. This should not do any network I/O, only check
if message is already downloaded and return it quickly, not being
blocked by the folder’s lock. Returning NULL is not considered as
an error, it just means that the message is still to-be-downloaded.
since: 3.24
Camel.FolderClass.get_message_sync
Gets the message corresponding to message_uid from folder.
since: 3.0
Camel.FolderClass.get_quota_info_sync
Gets a list of known quotas for folder. Free the returned
CamelFolderQuotaInfo struct with camel_folder_quota_info_free().
since: 3.2
Camel.FolderClass.prepare_content_refresh
Lets the folder know that it should refresh its content
the next time from fresh. This is useful for remote accounts,
to fully re-check the folder content against the server.
since: 3.22
Camel.FolderClass.purge_message_cache_sync
Delete the local cache of all messages between these uids.
since: 3.4
Camel.FolderClass.refresh_info_sync
Synchronizes a folder’s summary with its backing store.
since: 3.0
Camel.FolderClass.search_body_sync
Search the folder for messages with body containing words.
The list of satisfying message UIDs is returned in the out_uids.
The result list can be empty, meaning no such message exists.
unstable since: 3.58
Camel.FolderClass.search_header_sync
Search the folder for messages with header header_name, which either contains the words or, when the words is empty or NULL, the header exists in the message.
The list of satisfying message UIDs is returned in the out_uids.
The result list can be empty, meaning no such message exists.
unstable since: 3.58
Camel.FolderClass.search_sync
Searches the folder for messages matching the given search expression.
unstable since: 3.58
Camel.FolderClass.set_message_flags
Sets those flags specified by mask 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()).
Camel.FolderClass.synchronize_message_sync
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.
since: 3.0
Camel.FolderClass.synchronize_sync
Synchronizes any changes that have been made to folder to its
backing store, optionally expunging deleted messages as well.
since: 3.0
Camel.FolderClass.transfer_messages_to_sync
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().
since: 3.0
Class methods
camel_folder_class_map_legacy_property
Add the legacy property binding to allow opening legacy binary file states.
unstable since: 3.58