diff options
Diffstat (limited to 'camel/camel-folder.c')
-rw-r--r-- | camel/camel-folder.c | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/camel/camel-folder.c b/camel/camel-folder.c index f70fa6f342..a21ce9a236 100644 --- a/camel/camel-folder.c +++ b/camel/camel-folder.c @@ -56,9 +56,15 @@ static gint _append_message (CamelFolder *folder, CamelMimeMessage *message); static const GList *_list_permanent_flags (CamelFolder *folder); static void _copy_message_to (CamelFolder *folder, CamelMimeMessage *message, CamelFolder *dest_folder); +static gchar *_get_message_uid (CamelFolder *folder, CamelMimeMessage *message); +static gchar *_get_message_uid_by_number (CamelFolder *folder, gint message_number); +static CamelMimeMessage *_get_message_by_uid (CamelFolder *folder, gchar *uid); +static GList *_get_uid_list (CamelFolder *folder); + static void _finalize (GtkObject *object); + static void camel_folder_class_init (CamelFolderClass *camel_folder_class) { @@ -90,6 +96,10 @@ camel_folder_class_init (CamelFolderClass *camel_folder_class) camel_folder_class->append_message = _append_message; camel_folder_class->list_permanent_flags = _list_permanent_flags; camel_folder_class->copy_message_to; + camel_folder_class->get_message_uid = _get_message_uid; + camel_folder_class->get_message_uid_by_number = _get_message_uid_by_number; + camel_folder_class->get_message_by_uid = _get_message_by_uid; + camel_folder_class->get_uid_list = _get_uid_list; /* virtual method overload */ gtk_object_class->finalize = _finalize; @@ -992,3 +1002,73 @@ camel_folder_get_summary (CamelFolder *folder) { return folder->summary; } + + + + +/* UIDs stuff */ + +gboolean +camel_folder_has_uid_capability (CamelFolder *folder) +{ + return folder->has_uid_capability; +} + + +static gchar * +_get_message_uid (CamelFolder *folder, CamelMimeMessage *message) +{ + return NULL; +} + +gchar * +camel_folder_get_message_uid (CamelFolder *folder, CamelMimeMessage *message) +{ + if (!folder->has_uid_capability) return NULL; + return CF_CLASS (folder)->get_message_uid (folder, message); +} + + +static gchar * +_get_message_uid_by_number (CamelFolder *folder, gint message_number) +{ + return NULL; +} + +gchar * +camel_folder_get_message_uid_by_number (CamelFolder *folder, gint message_number) +{ + if (!folder->has_uid_capability) return NULL; + return CF_CLASS (folder)->get_message_uid_by_number (folder, message_number); +} + + +static CamelMimeMessage * +_get_message_by_uid (CamelFolder *folder, gchar *uid) +{ + return NULL; +} + + +CamelMimeMessage * +camel_folder_get_message_by_uid (CamelFolder *folder, gchar *uid) +{ + if (!folder->has_uid_capability) return NULL; + return CF_CLASS (folder)->get_message_by_uid (folder, uid); +} + +static GList * +_get_uid_list (CamelFolder *folder) +{ + return NULL; +} + +GList * +camel_folder_get_uid_list (CamelFolder *folder) +{ + if (!folder->has_uid_capability) return NULL; + return CF_CLASS (folder)->get_uid_list (folder); +} + + +/* **** */ |