KolabMailImapClient

KolabMailImapClient — the Kolab2 IMAP client

Stability Level

Unstable, unless otherwise indicated

Synopsis

                    KolabMailImapClientClass;
                    KolabMailImapClient;
gboolean            kolab_mail_imap_client_configure    (KolabMailImapClient *self,
                                                         KolabSettingsHandler *ksettings,
                                                         KolabMailMimeBuilder *mimebuilder,
                                                         GError **err);
gboolean            kolab_mail_imap_client_bringup      (KolabMailImapClient *self,
                                                         GError **err);
gboolean            kolab_mail_imap_client_shutdown     (KolabMailImapClient *self,
                                                         GError **err);
gboolean            kolab_mail_imap_client_go_online    (KolabMailImapClient *self,
                                                         GError **err);
gboolean            kolab_mail_imap_client_go_offline   (KolabMailImapClient *self,
                                                         GError **err);
GList*              kolab_mail_imap_client_query_foldernames
                                                        (KolabMailImapClient *self,
                                                         GError **err);
GList*              kolab_mail_imap_client_query_foldernames_anon
                                                        (gpointer self,
                                                         GError **err);
KolabFolderTypeID   kolab_mail_imap_client_get_folder_type
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);
KolabFolderSummary* kolab_mail_imap_client_query_folder_summary
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);
gboolean            kolab_mail_imap_client_create_folder
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);
gboolean            kolab_mail_imap_client_delete_folder
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);
gboolean            kolab_mail_imap_client_exists_folder
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);
GHashTable*         kolab_mail_imap_client_query_summaries
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         const gchar *sexp,
                                                         GError **err);
gboolean            kolab_mail_imap_client_store        (KolabMailImapClient *self,
                                                         KolabMailHandle *kmailhandle,
                                                         const gchar *foldername,
                                                         GError **err);
gboolean            kolab_mail_imap_client_retrieve     (KolabMailImapClient *self,
                                                         KolabMailHandle *kmailhandle,
                                                         GError **err);
gboolean            kolab_mail_imap_client_delete       (KolabMailImapClient *self,
                                                         KolabMailHandle *kmailhandle,
                                                         gboolean imapuid_only,
                                                         GError **err);

Object Hierarchy

  GObject
   +----KolabMailImapClient

Description

This class is the Kolab2 mail access wrapper. It is comprised of at least the following

This wrapper uses CamelKolabIMAPXStore and CamelKolabSession the way Evolution uses a camel provider, if possible in a simplified fashion (no other "provider" than CamelKolabIMAPXStore needs to be supported). The glue code aggregates as many fixed IMAPX-sequences as possible to provide a friendly API for use in KolabMailAccess.

Searching for emails based Kolab UID as well as based on search expressions is available.

Additional functionality like the assembly and disassembly of (Kolab) mail parts and handling of MIME message parts is done mainly via the KolabMailMimeBuilder class.

This class does not take care of offline PIM email management (transactions, syncing, ...). This is taken care of in another class, namely KolabMailSynchronizer.

Details

KolabMailImapClientClass

typedef struct {
	GObjectClass parent_class;
} KolabMailImapClientClass;

KolabMailImapClient

typedef struct _KolabMailImapClient KolabMailImapClient;

kolab_mail_imap_client_configure ()

gboolean            kolab_mail_imap_client_configure    (KolabMailImapClient *self,
                                                         KolabSettingsHandler *ksettings,
                                                         KolabMailMimeBuilder *mimebuilder,
                                                         GError **err);

kolab_mail_imap_client_bringup ()

gboolean            kolab_mail_imap_client_bringup      (KolabMailImapClient *self,
                                                         GError **err);

kolab_mail_imap_client_shutdown ()

gboolean            kolab_mail_imap_client_shutdown     (KolabMailImapClient *self,
                                                         GError **err);

kolab_mail_imap_client_go_online ()

gboolean            kolab_mail_imap_client_go_online    (KolabMailImapClient *self,
                                                         GError **err);

kolab_mail_imap_client_go_offline ()

gboolean            kolab_mail_imap_client_go_offline   (KolabMailImapClient *self,
                                                         GError **err);

kolab_mail_imap_client_query_foldernames ()

GList*              kolab_mail_imap_client_query_foldernames
                                                        (KolabMailImapClient *self,
                                                         GError **err);

kolab_mail_imap_client_query_foldernames_anon ()

GList*              kolab_mail_imap_client_query_foldernames_anon
                                                        (gpointer self,
                                                         GError **err);

kolab_mail_imap_client_get_folder_type ()

KolabFolderTypeID   kolab_mail_imap_client_get_folder_type
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);

kolab_mail_imap_client_query_folder_summary ()

KolabFolderSummary* kolab_mail_imap_client_query_folder_summary
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);

kolab_mail_imap_client_create_folder ()

gboolean            kolab_mail_imap_client_create_folder
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);

kolab_mail_imap_client_delete_folder ()

gboolean            kolab_mail_imap_client_delete_folder
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);

kolab_mail_imap_client_exists_folder ()

gboolean            kolab_mail_imap_client_exists_folder
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         GError **err);

kolab_mail_imap_client_query_summaries ()

GHashTable*         kolab_mail_imap_client_query_summaries
                                                        (KolabMailImapClient *self,
                                                         const gchar *foldername,
                                                         const gchar *sexp,
                                                         GError **err);

kolab_mail_imap_client_store ()

gboolean            kolab_mail_imap_client_store        (KolabMailImapClient *self,
                                                         KolabMailHandle *kmailhandle,
                                                         const gchar *foldername,
                                                         GError **err);

kolab_mail_imap_client_retrieve ()

gboolean            kolab_mail_imap_client_retrieve     (KolabMailImapClient *self,
                                                         KolabMailHandle *kmailhandle,
                                                         GError **err);

kolab_mail_imap_client_delete ()

gboolean            kolab_mail_imap_client_delete       (KolabMailImapClient *self,
                                                         KolabMailHandle *kmailhandle,
                                                         gboolean imapuid_only,
                                                         GError **err);

See Also

CamelKolabIMAPXStore, CamelKolabSession