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_count_by_expression
Searches the folder for count of messages matching the given search expression.
since: 2.26
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_expunge
Asynchronously deletes messages which have been marked as “DELETED”.
since: 3.0
camel_folder_free_deep
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.
camel_folder_free_shallow
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.
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_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_get_summary
This returns the summary information for the folder. This array should not be modified, and must be freed with camel_folder_free_summary().
camel_folder_get_uids
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().
camel_folder_get_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. Free the result by called camel_folder_free_uids(). Frees the array of UIDs returned by camel_folder_get_uids().
since: 2.26
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_search_by_expression
Searches the folder for messages matching the given search expression.
camel_folder_search_free
Free the result of a search as gotten by camel_folder_search_by_expression()
or camel_folder_search_by_uids().
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())
deprecated: Unknown
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
Methods inherited from CamelObject (4)
camel_object_get_state_filename
Returns the name of the file in which persistent property values for
object
are stored. The file is used by camel_object_state_write()
and camel_object_state_read()
to save and restore object state.
since: 2.32
camel_object_set_state_filename
Sets the name of the file in which persistent property values for
object
are stored. The file is used by camel_object_state_write()
and camel_object_state_read()
to save and restore object state.
since: 2.32
camel_object_state_read
Read persistent object state from CamelObject:state-filename
.
camel_object_state_write
Write persistent object state CamelObject:state-filename
.
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
Properties inherited from CamelObject (1)
Camel.Object:state-filename
The file in which to store persistent property values for this instance.
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 {
CamelObjectClass 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
);
gboolean (* get_message_user_flag) (
CamelFolder* folder,
const gchar* uid,
const gchar* name
);
void (* set_message_user_flag) (
CamelFolder* folder,
const gchar* uid,
const gchar* name,
gboolean value
);
const gchar* (* get_message_user_tag) (
CamelFolder* folder,
const gchar* uid,
const gchar* name
);
void (* set_message_user_tag) (
CamelFolder* folder,
const gchar* uid,
const gchar* name,
const gchar* value
);
GPtrArray* (* get_uids) (
CamelFolder* folder
);
void (* free_uids) (
CamelFolder* folder,
GPtrArray* array
);
gint (* cmp_uids) (
CamelFolder* folder,
const gchar* uid1,
const gchar* uid2
);
void (* sort_uids) (
CamelFolder* folder,
GPtrArray* uids
);
GPtrArray* (* get_summary) (
CamelFolder* folder
);
void (* free_summary) (
CamelFolder* folder,
GPtrArray* array
);
gboolean (* has_search_capability) (
CamelFolder* folder
);
GPtrArray* (* search_by_expression) (
CamelFolder* folder,
const gchar* expression,
GCancellable* cancellable,
GError** error
);
GPtrArray* (* search_by_uids) (
CamelFolder* folder,
const gchar* expression,
GPtrArray* uids,
GCancellable* cancellable,
GError** error
);
void (* search_free) (
CamelFolder* folder,
GPtrArray* result
);
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
);
guint32 (* count_by_expression) (
CamelFolder* folder,
const gchar* expression,
GCancellable* cancellable,
GError** error
);
GPtrArray* (* get_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
);
None reserved_methods;
void (* changed) (
CamelFolder* folder,
CamelFolderChangeInfo* changes
);
void (* deleted) (
CamelFolder* folder
);
void (* renamed) (
CamelFolder* folder,
const gchar* old_name
);
None reserved_signals;
}
Class members
parent_class: CamelObjectClass
- No 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.
get_message_user_flag: gboolean (* get_message_user_flag) ( CamelFolder* folder, const gchar* uid, const gchar* name )
- No description available.
set_message_user_flag: void (* set_message_user_flag) ( CamelFolder* folder, const gchar* uid, const gchar* name, gboolean value )
- No description available.
get_message_user_tag: const gchar* (* get_message_user_tag) ( CamelFolder* folder, const gchar* uid, const gchar* name )
- No description available.
set_message_user_tag: void (* set_message_user_tag) ( CamelFolder* folder, const gchar* uid, const gchar* name, const gchar* value )
- No description available.
get_uids: GPtrArray* (* get_uids) ( CamelFolder* folder )
- No description available.
free_uids: void (* free_uids) ( CamelFolder* folder, GPtrArray* array )
- 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.
get_summary: GPtrArray* (* get_summary) ( CamelFolder* folder )
- No description available.
free_summary: void (* free_summary) ( CamelFolder* folder, GPtrArray* array )
- No description available.
has_search_capability: gboolean (* has_search_capability) ( CamelFolder* folder )
- No description available.
search_by_expression: GPtrArray* (* search_by_expression) ( CamelFolder* folder, const gchar* expression, GCancellable* cancellable, GError** error )
- No description available.
search_by_uids: GPtrArray* (* search_by_uids) ( CamelFolder* folder, const gchar* expression, GPtrArray* uids, GCancellable* cancellable, GError** error )
- No description available.
search_free: void (* search_free) ( CamelFolder* folder, GPtrArray* result )
- 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.
count_by_expression: guint32 (* count_by_expression) ( CamelFolder* folder, const gchar* expression, GCancellable* cancellable, GError** error )
- No description available.
get_uncached_uids: GPtrArray* (* get_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.
reserved_methods: None
- No 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: None
- No 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.count_by_expression
Searches the folder for count of messages matching the given search expression.
since: 2.26
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.get_summary
This returns the summary information for the folder. This array should not be modified, and must be freed with camel_folder_free_summary().
Camel.FolderClass.get_uids
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().
Camel.FolderClass.get_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. Free the result by called camel_folder_free_uids(). Frees the array of UIDs returned by camel_folder_get_uids().
since: 2.26
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_by_expression
Searches the folder for messages matching the given search expression.
Camel.FolderClass.search_free
Free the result of a search as gotten by camel_folder_search_by_expression()
or camel_folder_search_by_uids().
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())
deprecated: Unknown
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