<refentry id="camel-CamelImapJournal">
<refmeta>
<refentrytitle role="top_of_page" id="camel-CamelImapJournal.top_of_page">CamelImapJournal</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>CAMEL Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>CamelImapJournal</refname>
<refpurpose></refpurpose>
</refnamediv>

<refsynopsisdiv id="camel-CamelImapJournal.synopsis" role="synopsis">
<title role="synopsis.title">Synopsis</title>

<synopsis>
enum                <link linkend="CamelOfflineAction">CamelOfflineAction</link>;
                    <link linkend="CamelIMAPJournalEntry">CamelIMAPJournalEntry</link>;
                    <link linkend="CamelIMAPJournal">CamelIMAPJournal</link>;
<link linkend="CamelOfflineJournal">CamelOfflineJournal</link> * <link linkend="camel-imap-journal-new">camel_imap_journal_new</link>            (<link linkend="struct--CamelImapFolder">struct _CamelImapFolder</link> *folder,
                                                         const <link linkend="char">char</link> *filename);
<link linkend="void">void</link>                <link linkend="camel-imap-journal-log">camel_imap_journal_log</link>              (<link linkend="CamelOfflineJournal">CamelOfflineJournal</link> *journal,
                                                         <link linkend="CamelOfflineAction">CamelOfflineAction</link> action,
                                                         ...);
<link linkend="void">void</link>                <link linkend="camel-imap-journal-uidmap-add">camel_imap_journal_uidmap_add</link>       (<link linkend="CamelIMAPJournal">CamelIMAPJournal</link> *journal,
                                                         const <link linkend="char">char</link> *old_uid,
                                                         const <link linkend="char">char</link> *n_uid);
const <link linkend="char">char</link> *        <link linkend="camel-imap-journal-uidmap-lookup">camel_imap_journal_uidmap_lookup</link>    (<link linkend="CamelIMAPJournal">CamelIMAPJournal</link> *journal,
                                                         const <link linkend="char">char</link> *uid);
<link linkend="void">void</link>                <link linkend="camel-imap-journal-close-folders">camel_imap_journal_close_folders</link>    (<link linkend="CamelIMAPJournal">CamelIMAPJournal</link> *journal);
</synopsis>
</refsynopsisdiv>









<refsect1 id="camel-CamelImapJournal.description" role="desc">
<title role="desc.title">Description</title>
<para>
</para>
</refsect1>

<refsect1 id="camel-CamelImapJournal.details" role="details">
<title role="details.title">Details</title>
<refsect2 id="CamelOfflineAction" role="enum">
<title>enum CamelOfflineAction</title>
<indexterm zone="CamelOfflineAction"><primary sortas="CamelOfflineAction">CamelOfflineAction</primary></indexterm><programlisting>typedef enum {
	CAMEL_IMAP_JOURNAL_ENTRY_EXPUNGE,
	CAMEL_IMAP_JOURNAL_ENTRY_APPEND,
	CAMEL_IMAP_JOURNAL_ENTRY_TRANSFER
} CamelOfflineAction;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="CamelIMAPJournalEntry" role="struct">
<title>CamelIMAPJournalEntry</title>
<indexterm zone="CamelIMAPJournalEntry"><primary sortas="CamelIMAPJournalEntry">CamelIMAPJournalEntry</primary></indexterm><programlisting>typedef struct {
	CamelDListNode node;
	
	CamelOfflineAction type;

	GPtrArray *uids;	

	char *append_uid;
	char *dest_folder_name;
	gboolean move;
} CamelIMAPJournalEntry;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="CamelIMAPJournal" role="struct">
<title>CamelIMAPJournal</title>
<indexterm zone="CamelIMAPJournal"><primary sortas="CamelIMAPJournal">CamelIMAPJournal</primary></indexterm><programlisting>typedef struct {
	CamelOfflineJournal parent_object;

	GHashTable *folders;
	GHashTable *uidmap;	
	gboolean rp_in_progress;
} CamelIMAPJournal;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="camel-imap-journal-new" role="function">
<title>camel_imap_journal_new ()</title>
<indexterm zone="camel-imap-journal-new"><primary sortas="camel_imap_journal_new">camel_imap_journal_new</primary></indexterm><programlisting><link linkend="CamelOfflineJournal">CamelOfflineJournal</link> * camel_imap_journal_new            (<link linkend="struct--CamelImapFolder">struct _CamelImapFolder</link> *folder,
                                                         const <link linkend="char">char</link> *filename);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>folder</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>filename</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-imap-journal-log" role="function">
<title>camel_imap_journal_log ()</title>
<indexterm zone="camel-imap-journal-log"><primary sortas="camel_imap_journal_log">camel_imap_journal_log</primary></indexterm><programlisting><link linkend="void">void</link>                camel_imap_journal_log              (<link linkend="CamelOfflineJournal">CamelOfflineJournal</link> *journal,
                                                         <link linkend="CamelOfflineAction">CamelOfflineAction</link> action,
                                                         ...);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>journal</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>action</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>...</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-imap-journal-uidmap-add" role="function">
<title>camel_imap_journal_uidmap_add ()</title>
<indexterm zone="camel-imap-journal-uidmap-add"><primary sortas="camel_imap_journal_uidmap_add">camel_imap_journal_uidmap_add</primary></indexterm><programlisting><link linkend="void">void</link>                camel_imap_journal_uidmap_add       (<link linkend="CamelIMAPJournal">CamelIMAPJournal</link> *journal,
                                                         const <link linkend="char">char</link> *old_uid,
                                                         const <link linkend="char">char</link> *n_uid);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>journal</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>old_uid</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>n_uid</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-imap-journal-uidmap-lookup" role="function">
<title>camel_imap_journal_uidmap_lookup ()</title>
<indexterm zone="camel-imap-journal-uidmap-lookup"><primary sortas="camel_imap_journal_uidmap_lookup">camel_imap_journal_uidmap_lookup</primary></indexterm><programlisting>const <link linkend="char">char</link> *        camel_imap_journal_uidmap_lookup    (<link linkend="CamelIMAPJournal">CamelIMAPJournal</link> *journal,
                                                         const <link linkend="char">char</link> *uid);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>journal</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>uid</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="camel-imap-journal-close-folders" role="function">
<title>camel_imap_journal_close_folders ()</title>
<indexterm zone="camel-imap-journal-close-folders"><primary sortas="camel_imap_journal_close_folders">camel_imap_journal_close_folders</primary></indexterm><programlisting><link linkend="void">void</link>                camel_imap_journal_close_folders    (<link linkend="CamelIMAPJournal">CamelIMAPJournal</link> *journal);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>journal</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>

</refsect1>




</refentry>
