<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 
               "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<refentry id="EBookBackend">
<refmeta>
<refentrytitle role="top_of_page" id="EBookBackend.top_of_page">EBookBackend</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>LIBEDATA-BOOK Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>EBookBackend</refname>
<refpurpose></refpurpose>
</refnamediv>

<refsynopsisdiv id="EBookBackend.synopsis" role="synopsis">
<title role="synopsis.title">Synopsis</title>

<synopsis>
struct              <link linkend="EBookBackend-struct">EBookBackend</link>;
<link linkend="gboolean">gboolean</link>            <link linkend="e-book-backend-construct">e_book_backend_construct</link>            (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="GNOME-Evolution-Addressbook-CallStatus">GNOME_Evolution_Addressbook_CallStatus</link>  <link linkend="e-book-backend-load-source">e_book_backend_load_source</link>
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="ESource">ESource</link> *source,
                                                         <link linkend="gboolean">gboolean</link> only_if_exists);
<link linkend="ESource">ESource</link> *           <link linkend="e-book-backend-get-source">e_book_backend_get_source</link>           (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="gboolean">gboolean</link>            <link linkend="e-book-backend-add-client">e_book_backend_add_client</link>           (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book);
<link linkend="void">void</link>                <link linkend="e-book-backend-remove-client">e_book_backend_remove_client</link>        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book);
<link linkend="gboolean">gboolean</link>            <link linkend="e-book-backend-has-out-of-proc-clients">e_book_backend_has_out_of_proc_clients</link>
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="char">char</link> *              <link linkend="e-book-backend-get-static-capabilities">e_book_backend_get_static_capabilities</link>
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="gboolean">gboolean</link>            <link linkend="e-book-backend-is-loaded">e_book_backend_is_loaded</link>            (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="gboolean">gboolean</link>            <link linkend="e-book-backend-is-writable">e_book_backend_is_writable</link>          (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="gboolean">gboolean</link>            <link linkend="e-book-backend-is-removed">e_book_backend_is_removed</link>           (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="void">void</link>                <link linkend="e-book-backend-open">e_book_backend_open</link>                 (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         <link linkend="gboolean">gboolean</link> only_if_exists);
<link linkend="void">void</link>                <link linkend="e-book-backend-remove">e_book_backend_remove</link>               (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);
<link linkend="void">void</link>                <link linkend="e-book-backend-create-contact">e_book_backend_create_contact</link>       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *vcard);
<link linkend="void">void</link>                <link linkend="e-book-backend-remove-contacts">e_book_backend_remove_contacts</link>      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         <link linkend="GList">GList</link> *id_list);
<link linkend="void">void</link>                <link linkend="e-book-backend-modify-contact">e_book_backend_modify_contact</link>       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *vcard);
<link linkend="void">void</link>                <link linkend="e-book-backend-get-contact">e_book_backend_get_contact</link>          (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *id);
<link linkend="void">void</link>                <link linkend="e-book-backend-get-contact-list">e_book_backend_get_contact_list</link>     (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *query);
<link linkend="void">void</link>                <link linkend="e-book-backend-get-changes">e_book_backend_get_changes</link>          (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *change_id);
<link linkend="void">void</link>                <link linkend="e-book-backend-authenticate-user">e_book_backend_authenticate_user</link>    (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *user,
                                                         const <link linkend="char">char</link> *passwd,
                                                         const <link linkend="char">char</link> *auth_method);
<link linkend="void">void</link>                <link linkend="e-book-backend-get-supported-fields">e_book_backend_get_supported_fields</link> (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);
<link linkend="void">void</link>                <link linkend="e-book-backend-get-required-fields">e_book_backend_get_required_fields</link>  (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);
<link linkend="void">void</link>                <link linkend="e-book-backend-get-supported-auth-methods">e_book_backend_get_supported_auth_methods</link>
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);
<link linkend="GNOME-Evolution-Addressbook-CallStatus">GNOME_Evolution_Addressbook_CallStatus</link>  <link linkend="e-book-backend-cancel-operation">e_book_backend_cancel_operation</link>
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book);
<link linkend="void">void</link>                <link linkend="e-book-backend-set-mode">e_book_backend_set_mode</link>             (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="GNOME-Evolution-Addressbook-BookMode">GNOME_Evolution_Addressbook_BookMode</link> mode);
<link linkend="void">void</link>                <link linkend="e-book-backend-start-book-view">e_book_backend_start_book_view</link>      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);
<link linkend="void">void</link>                <link linkend="e-book-backend-stop-book-view">e_book_backend_stop_book_view</link>       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);
<link linkend="void">void</link>                <link linkend="e-book-backend-add-book-view">e_book_backend_add_book_view</link>        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);
<link linkend="void">void</link>                <link linkend="e-book-backend-remove-book-view">e_book_backend_remove_book_view</link>     (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);
<link linkend="EList">EList</link> *             <link linkend="e-book-backend-get-book-views">e_book_backend_get_book_views</link>       (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="void">void</link>                <link linkend="e-book-backend-notify-update">e_book_backend_notify_update</link>        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EContact">EContact</link> *contact);
<link linkend="void">void</link>                <link linkend="e-book-backend-notify-remove">e_book_backend_notify_remove</link>        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         const <link linkend="char">char</link> *id);
<link linkend="void">void</link>                <link linkend="e-book-backend-notify-complete">e_book_backend_notify_complete</link>      (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="void">void</link>                <link linkend="e-book-backend-notify-writable">e_book_backend_notify_writable</link>      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_writable);
<link linkend="void">void</link>                <link linkend="e-book-backend-notify-connection-status">e_book_backend_notify_connection_status</link>
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_online);
<link linkend="void">void</link>                <link linkend="e-book-backend-notify-auth-required">e_book_backend_notify_auth_required</link> (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="void">void</link>                <link linkend="e-book-backend-sync">e_book_backend_sync</link>                 (<link linkend="EBookBackend">EBookBackend</link> *backend);
<link linkend="void">void</link>                <link linkend="e-book-backend-set-is-loaded">e_book_backend_set_is_loaded</link>        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_loaded);
<link linkend="void">void</link>                <link linkend="e-book-backend-set-is-writable">e_book_backend_set_is_writable</link>      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_writable);
<link linkend="void">void</link>                <link linkend="e-book-backend-set-is-removed">e_book_backend_set_is_removed</link>       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_removed);
<link linkend="GNOME-Evolution-Addressbook-BookChangeItem">GNOME_Evolution_Addressbook_BookChangeItem</link>* <link linkend="e-book-backend-change-add-new">e_book_backend_change_add_new</link>
                                                        (const <link linkend="char">char</link> *vcard);
<link linkend="GNOME-Evolution-Addressbook-BookChangeItem">GNOME_Evolution_Addressbook_BookChangeItem</link>* <link linkend="e-book-backend-change-modify-new">e_book_backend_change_modify_new</link>
                                                        (const <link linkend="char">char</link> *vcard);
<link linkend="GNOME-Evolution-Addressbook-BookChangeItem">GNOME_Evolution_Addressbook_BookChangeItem</link>* <link linkend="e-book-backend-change-delete-new">e_book_backend_change_delete_new</link>
                                                        (const <link linkend="char">char</link> *id);
struct              <link linkend="EBookBackendClass">EBookBackendClass</link>;
</synopsis>
</refsynopsisdiv>

<refsect1 id="EBookBackend.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<synopsis>
  <link linkend="GObject">GObject</link>
   +----EBookBackend
         +----<link linkend="EBookBackendSync">EBookBackendSync</link>
</synopsis>
</refsect1>






<refsect1 id="EBookBackend.signals" role="signal_proto">
<title role="signal_proto.title">Signals</title>
<synopsis>
  &quot;<link linkend="EBookBackend-last-client-gone">last-client-gone</link>&quot;                               : Run First
</synopsis>
</refsect1>


<refsect1 id="EBookBackend.description" role="desc">
<title role="desc.title">Description</title>
<para>
</para>
</refsect1>

<refsect1 id="EBookBackend.details" role="details">
<title role="details.title">Details</title>
<refsect2 id="EBookBackend-struct" role="struct">
<title>struct EBookBackend</title>
<indexterm zone="EBookBackend-struct"><primary sortas="EBookBackend">EBookBackend</primary></indexterm><programlisting>struct EBookBackend;</programlisting>
<para>
</para></refsect2>
<refsect2 id="e-book-backend-construct" role="function">
<title>e_book_backend_construct ()</title>
<indexterm zone="e-book-backend-construct"><primary sortas="e_book_backend_construct">e_book_backend_construct</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            e_book_backend_construct            (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Does nothing.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-load-source" role="function">
<title>e_book_backend_load_source ()</title>
<indexterm zone="e-book-backend-load-source"><primary sortas="e_book_backend_load_source">e_book_backend_load_source</primary></indexterm><programlisting><link linkend="GNOME-Evolution-Addressbook-CallStatus">GNOME_Evolution_Addressbook_CallStatus</link>  e_book_backend_load_source
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="ESource">ESource</link> *source,
                                                         <link linkend="gboolean">gboolean</link> only_if_exists);</programlisting>
<para>
Loads <parameter>source</parameter> into <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>source</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="ESource"><type>ESource</type></link> to load
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>only_if_exists</parameter>&#160;:</term>
<listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> to prevent the creation of a new book
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A <link linkend="GNOME-Evolution-Addressbook-CallStatus"><type>GNOME_Evolution_Addressbook_CallStatus</type></link> indicating the outcome.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-source" role="function">
<title>e_book_backend_get_source ()</title>
<indexterm zone="e-book-backend-get-source"><primary sortas="e_book_backend_get_source">e_book_backend_get_source</primary></indexterm><programlisting><link linkend="ESource">ESource</link> *           e_book_backend_get_source           (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Queries the source that an addressbook backend is serving.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> An addressbook backend.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> ESource for the backend.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-add-client" role="function">
<title>e_book_backend_add_client ()</title>
<indexterm zone="e-book-backend-add-client"><primary sortas="e_book_backend_add_client">e_book_backend_add_client</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            e_book_backend_add_client           (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book);</programlisting>
<para>
Adds a client to an addressbook backend.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> An addressbook backend.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> the corba object representing the client connection.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> TRUE on success, FALSE on failure to add the client.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-remove-client" role="function">
<title>e_book_backend_remove_client ()</title>
<indexterm zone="e-book-backend-remove-client"><primary sortas="e_book_backend_remove_client">e_book_backend_remove_client</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_remove_client        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book);</programlisting>
<para>
Removes <parameter>book</parameter> from the list of <parameter>backend</parameter>'s clients.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link> to remove
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-has-out-of-proc-clients" role="function">
<title>e_book_backend_has_out_of_proc_clients ()</title>
<indexterm zone="e-book-backend-has-out-of-proc-clients"><primary sortas="e_book_backend_has_out_of_proc_clients">e_book_backend_has_out_of_proc_clients</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            e_book_backend_has_out_of_proc_clients
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Checks if <parameter>backend</parameter> has clients running in other system processes.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if there are clients in other processes, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-static-capabilities" role="function">
<title>e_book_backend_get_static_capabilities ()</title>
<indexterm zone="e-book-backend-get-static-capabilities"><primary sortas="e_book_backend_get_static_capabilities">e_book_backend_get_static_capabilities</primary></indexterm><programlisting><link linkend="char">char</link> *              e_book_backend_get_static_capabilities
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Gets the capabilities offered by this <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A string listing the capabilities.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-is-loaded" role="function">
<title>e_book_backend_is_loaded ()</title>
<indexterm zone="e-book-backend-is-loaded"><primary sortas="e_book_backend_is_loaded">e_book_backend_is_loaded</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            e_book_backend_is_loaded            (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Checks if <parameter>backend</parameter>'s storage has been opened and the backend
itself is ready for accessing.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if loaded, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-is-writable" role="function">
<title>e_book_backend_is_writable ()</title>
<indexterm zone="e-book-backend-is-writable"><primary sortas="e_book_backend_is_writable">e_book_backend_is_writable</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            e_book_backend_is_writable          (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Checks if we can write to <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if writeable, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> if not.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-is-removed" role="function">
<title>e_book_backend_is_removed ()</title>
<indexterm zone="e-book-backend-is-removed"><primary sortas="e_book_backend_is_removed">e_book_backend_is_removed</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            e_book_backend_is_removed           (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Checks if <parameter>backend</parameter> has been removed from its physical storage.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>backend</parameter> has been removed, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-open" role="function">
<title>e_book_backend_open ()</title>
<indexterm zone="e-book-backend-open"><primary sortas="e_book_backend_open">e_book_backend_open</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_open                 (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         <link linkend="gboolean">gboolean</link> only_if_exists);</programlisting>
<para>
Executes an 'open' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>only_if_exists</parameter>&#160;:</term>
<listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> to prevent the creation of a new book
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-remove" role="function">
<title>e_book_backend_remove ()</title>
<indexterm zone="e-book-backend-remove"><primary sortas="e_book_backend_remove">e_book_backend_remove</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_remove               (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);</programlisting>
<para>
Executes a 'remove' request to remove all of <parameter>backend</parameter>'s data,
specified by <parameter>opid</parameter> on <parameter>book</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-create-contact" role="function">
<title>e_book_backend_create_contact ()</title>
<indexterm zone="e-book-backend-create-contact"><primary sortas="e_book_backend_create_contact">e_book_backend_create_contact</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_create_contact       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *vcard);</programlisting>
<para>
Executes a 'create contact' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>vcard</parameter>&#160;:</term>
<listitem><simpara> the VCard to add
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-remove-contacts" role="function">
<title>e_book_backend_remove_contacts ()</title>
<indexterm zone="e-book-backend-remove-contacts"><primary sortas="e_book_backend_remove_contacts">e_book_backend_remove_contacts</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_remove_contacts      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         <link linkend="GList">GList</link> *id_list);</programlisting>
<para>
Executes a 'remove contacts' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>id_list</parameter>&#160;:</term>
<listitem><simpara> list of string IDs to remove
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-modify-contact" role="function">
<title>e_book_backend_modify_contact ()</title>
<indexterm zone="e-book-backend-modify-contact"><primary sortas="e_book_backend_modify_contact">e_book_backend_modify_contact</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_modify_contact       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *vcard);</programlisting>
<para>
Executes a 'modify contact' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>vcard</parameter>&#160;:</term>
<listitem><simpara> the VCard to update
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-contact" role="function">
<title>e_book_backend_get_contact ()</title>
<indexterm zone="e-book-backend-get-contact"><primary sortas="e_book_backend_get_contact">e_book_backend_get_contact</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_get_contact          (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *id);</programlisting>
<para>
Executes a 'get contact' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>id</parameter>&#160;:</term>
<listitem><simpara> the ID of the contact to get
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-contact-list" role="function">
<title>e_book_backend_get_contact_list ()</title>
<indexterm zone="e-book-backend-get-contact-list"><primary sortas="e_book_backend_get_contact_list">e_book_backend_get_contact_list</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_get_contact_list     (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *query);</programlisting>
<para>
Executes a 'get contact list' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>query</parameter>&#160;:</term>
<listitem><simpara> the s-expression to match
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-changes" role="function">
<title>e_book_backend_get_changes ()</title>
<indexterm zone="e-book-backend-get-changes"><primary sortas="e_book_backend_get_changes">e_book_backend_get_changes</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_get_changes          (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *change_id);</programlisting>
<para>
Executes a 'get changes' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>change_id</parameter>&#160;:</term>
<listitem><simpara> the ID of the changeset
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-authenticate-user" role="function">
<title>e_book_backend_authenticate_user ()</title>
<indexterm zone="e-book-backend-authenticate-user"><primary sortas="e_book_backend_authenticate_user">e_book_backend_authenticate_user</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_authenticate_user    (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid,
                                                         const <link linkend="char">char</link> *user,
                                                         const <link linkend="char">char</link> *passwd,
                                                         const <link linkend="char">char</link> *auth_method);</programlisting>
<para>
Executes an 'authenticate' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>user</parameter>&#160;:</term>
<listitem><simpara> the name of the user account
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>passwd</parameter>&#160;:</term>
<listitem><simpara> the user's password
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>auth_method</parameter>&#160;:</term>
<listitem><simpara> the authentication method to use
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-supported-fields" role="function">
<title>e_book_backend_get_supported_fields ()</title>
<indexterm zone="e-book-backend-get-supported-fields"><primary sortas="e_book_backend_get_supported_fields">e_book_backend_get_supported_fields</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_get_supported_fields (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);</programlisting>
<para>
Executes a 'get supported fields' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-required-fields" role="function">
<title>e_book_backend_get_required_fields ()</title>
<indexterm zone="e-book-backend-get-required-fields"><primary sortas="e_book_backend_get_required_fields">e_book_backend_get_required_fields</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_get_required_fields  (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);</programlisting>
<para>
Executes a 'get required fields' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-supported-auth-methods" role="function">
<title>e_book_backend_get_supported_auth_methods ()</title>
<indexterm zone="e-book-backend-get-supported-auth-methods"><primary sortas="e_book_backend_get_supported_auth_methods">e_book_backend_get_supported_auth_methods</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_get_supported_auth_methods
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book,
                                                         <link linkend="guint32">guint32</link> opid);</programlisting>
<para>
Executes a 'get supported auth methods' request specified by <parameter>opid</parameter> on <parameter>book</parameter>
using <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>opid</parameter>&#160;:</term>
<listitem><simpara> the ID to use for this operation
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-cancel-operation" role="function">
<title>e_book_backend_cancel_operation ()</title>
<indexterm zone="e-book-backend-cancel-operation"><primary sortas="e_book_backend_cancel_operation">e_book_backend_cancel_operation</primary></indexterm><programlisting><link linkend="GNOME-Evolution-Addressbook-CallStatus">GNOME_Evolution_Addressbook_CallStatus</link>  e_book_backend_cancel_operation
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBook">EDataBook</link> *book);</programlisting>
<para>
Cancel <parameter>book</parameter>'s running operation on <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>book</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBook"><type>EDataBook</type></link> whose operation should be cancelled
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A GNOME_Evolution_Addressbook_CallStatus indicating the outcome.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-set-mode" role="function">
<title>e_book_backend_set_mode ()</title>
<indexterm zone="e-book-backend-set-mode"><primary sortas="e_book_backend_set_mode">e_book_backend_set_mode</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_set_mode             (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="GNOME-Evolution-Addressbook-BookMode">GNOME_Evolution_Addressbook_BookMode</link> mode);</programlisting>
<para>
Sets <parameter>backend</parameter>'s online/offline mode to <parameter>mode</parameter>. Mode can be 1 for offline
or 2 indicating that it is connected and online.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookbackend"><type>EBookbackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>mode</parameter>&#160;:</term>
<listitem><simpara> a mode indicating the online/offline status of the backend
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-start-book-view" role="function">
<title>e_book_backend_start_book_view ()</title>
<indexterm zone="e-book-backend-start-book-view"><primary sortas="e_book_backend_start_book_view">e_book_backend_start_book_view</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_start_book_view      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);</programlisting>
<para>
Starts running the query specified by <parameter>book_view</parameter>, emitting
signals for matching contacts.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>view</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-stop-book-view" role="function">
<title>e_book_backend_stop_book_view ()</title>
<indexterm zone="e-book-backend-stop-book-view"><primary sortas="e_book_backend_stop_book_view">e_book_backend_stop_book_view</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_stop_book_view       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);</programlisting>
<para>
Stops running the query specified by <parameter>book_view</parameter>, emitting
no more signals.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>view</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-add-book-view" role="function">
<title>e_book_backend_add_book_view ()</title>
<indexterm zone="e-book-backend-add-book-view"><primary sortas="e_book_backend_add_book_view">e_book_backend_add_book_view</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_add_book_view        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);</programlisting>
<para>
Adds <parameter>view</parameter> to <parameter>backend</parameter> for querying.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>view</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBookView"><type>EDataBookView</type></link>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-remove-book-view" role="function">
<title>e_book_backend_remove_book_view ()</title>
<indexterm zone="e-book-backend-remove-book-view"><primary sortas="e_book_backend_remove_book_view">e_book_backend_remove_book_view</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_remove_book_view     (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EDataBookView">EDataBookView</link> *view);</programlisting>
<para>
Removes <parameter>view</parameter> from <parameter>backend</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>view</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EDataBookView"><type>EDataBookView</type></link>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-get-book-views" role="function">
<title>e_book_backend_get_book_views ()</title>
<indexterm zone="e-book-backend-get-book-views"><primary sortas="e_book_backend_get_book_views">e_book_backend_get_book_views</primary></indexterm><programlisting><link linkend="EList">EList</link> *             e_book_backend_get_book_views       (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Gets the list of <link linkend="EDataBookView"><type>EDataBookView</type></link> views running on this backend.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> An <link linkend="EList"><type>EList</type></link> of <link linkend="EDataBookView"><type>EDataBookView</type></link> objects.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-notify-update" role="function">
<title>e_book_backend_notify_update ()</title>
<indexterm zone="e-book-backend-notify-update"><primary sortas="e_book_backend_notify_update">e_book_backend_notify_update</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_notify_update        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="EContact">EContact</link> *contact);</programlisting>
<para>
Notifies all of <parameter>backend</parameter>'s book views about the new or modified
contacts <parameter>contact</parameter>.
</para>
<para>
<link linkend="e-data-book-respond-create"><function>e_data_book_respond_create()</function></link> and <link linkend="e-data-book-respond-modify"><function>e_data_book_respond_modify()</function></link> call this
function for you. You only need to call this from your backend if
contacts are created or modified by another (non-PAS-using) client.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>contact</parameter>&#160;:</term>
<listitem><simpara> a new or modified contact
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-notify-remove" role="function">
<title>e_book_backend_notify_remove ()</title>
<indexterm zone="e-book-backend-notify-remove"><primary sortas="e_book_backend_notify_remove">e_book_backend_notify_remove</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_notify_remove        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         const <link linkend="char">char</link> *id);</programlisting>
<para>
Notifies all of <parameter>backend</parameter>'s book views that the contact with UID
<parameter>id</parameter> has been removed.
</para>
<para>
<link linkend="e-data-book-respond-remove-contacts"><function>e_data_book_respond_remove_contacts()</function></link> calls this function for you. You
only need to call this from your backend if contacts are removed by
another (non-PAS-using) client.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>id</parameter>&#160;:</term>
<listitem><simpara> a contact id
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-notify-complete" role="function">
<title>e_book_backend_notify_complete ()</title>
<indexterm zone="e-book-backend-notify-complete"><primary sortas="e_book_backend_notify_complete">e_book_backend_notify_complete</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_notify_complete      (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Notifies all of <parameter>backend</parameter>'s book views that the current set of
notifications is complete; use this after a series of
<link linkend="e-book-backend-notify-update"><function>e_book_backend_notify_update()</function></link> and <link linkend="e-book-backend-notify-remove"><function>e_book_backend_notify_remove()</function></link> calls.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookbackend"><type>EBookbackend</type></link>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-notify-writable" role="function">
<title>e_book_backend_notify_writable ()</title>
<indexterm zone="e-book-backend-notify-writable"><primary sortas="e_book_backend_notify_writable">e_book_backend_notify_writable</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_notify_writable      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_writable);</programlisting>
<para>
Notifies all backends clients about the current writable state.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>is_writable</parameter>&#160;:</term>
<listitem><simpara> flag indicating writable status
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-notify-connection-status" role="function">
<title>e_book_backend_notify_connection_status ()</title>
<indexterm zone="e-book-backend-notify-connection-status"><primary sortas="e_book_backend_notify_connection_status">e_book_backend_notify_connection_status</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_notify_connection_status
                                                        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_online);</programlisting>
<para>
Notifies clients of <parameter>backend</parameter>'s connection status indicated by <parameter>is_online</parameter>.
Meant to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>is_online</parameter>&#160;:</term>
<listitem><simpara> flag indicating whether <parameter>backend</parameter> is connected and online
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-notify-auth-required" role="function">
<title>e_book_backend_notify_auth_required ()</title>
<indexterm zone="e-book-backend-notify-auth-required"><primary sortas="e_book_backend_notify_auth_required">e_book_backend_notify_auth_required</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_notify_auth_required (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Notifies clients that <parameter>backend</parameter> requires authentication in order to
connect. Means to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-sync" role="function">
<title>e_book_backend_sync ()</title>
<indexterm zone="e-book-backend-sync"><primary sortas="e_book_backend_sync">e_book_backend_sync</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_sync                 (<link linkend="EBookBackend">EBookBackend</link> *backend);</programlisting>
<para>
Write all pending data to disk.  This is only required under special
circumstances (for example before a live backup) and should not be used in
normal use.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookbackend"><type>EBookbackend</type></link>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-set-is-loaded" role="function">
<title>e_book_backend_set_is_loaded ()</title>
<indexterm zone="e-book-backend-set-is-loaded"><primary sortas="e_book_backend_set_is_loaded">e_book_backend_set_is_loaded</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_set_is_loaded        (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_loaded);</programlisting>
<para>
Sets the flag indicating whether <parameter>backend</parameter> is loaded to <parameter>is_loaded</parameter>.
Meant to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>is_loaded</parameter>&#160;:</term>
<listitem><simpara> A flag indicating whether the backend is loaded
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-set-is-writable" role="function">
<title>e_book_backend_set_is_writable ()</title>
<indexterm zone="e-book-backend-set-is-writable"><primary sortas="e_book_backend_set_is_writable">e_book_backend_set_is_writable</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_set_is_writable      (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_writable);</programlisting>
<para>
Sets the flag indicating whether <parameter>backend</parameter> is writeable to <parameter>is_writeable</parameter>.
Meant to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>is_writable</parameter>&#160;:</term>
<listitem><simpara> A flag indicating whether the backend is writeable
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-set-is-removed" role="function">
<title>e_book_backend_set_is_removed ()</title>
<indexterm zone="e-book-backend-set-is-removed"><primary sortas="e_book_backend_set_is_removed">e_book_backend_set_is_removed</primary></indexterm><programlisting><link linkend="void">void</link>                e_book_backend_set_is_removed       (<link linkend="EBookBackend">EBookBackend</link> *backend,
                                                         <link linkend="gboolean">gboolean</link> is_removed);</programlisting>
<para>
Sets the flag indicating whether <parameter>backend</parameter> was removed to <parameter>is_removed</parameter>.
Meant to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>backend</parameter>&#160;:</term>
<listitem><simpara> an <link linkend="EBookBackend"><type>EBookBackend</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>is_removed</parameter>&#160;:</term>
<listitem><simpara> A flag indicating whether the backend's storage was removed
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-change-add-new" role="function">
<title>e_book_backend_change_add_new ()</title>
<indexterm zone="e-book-backend-change-add-new"><primary sortas="e_book_backend_change_add_new">e_book_backend_change_add_new</primary></indexterm><programlisting><link linkend="GNOME-Evolution-Addressbook-BookChangeItem">GNOME_Evolution_Addressbook_BookChangeItem</link>* e_book_backend_change_add_new
                                                        (const <link linkend="char">char</link> *vcard);</programlisting>
<para>
Creates a new change item indicating <parameter>vcard</parameter> was added.
Meant to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>vcard</parameter>&#160;:</term>
<listitem><simpara> a VCard string
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A new <link linkend="GNOME-Evolution-Addressbook-BookChangeItem"><type>GNOME_Evolution_Addressbook_BookChangeItem</type></link>.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-change-modify-new" role="function">
<title>e_book_backend_change_modify_new ()</title>
<indexterm zone="e-book-backend-change-modify-new"><primary sortas="e_book_backend_change_modify_new">e_book_backend_change_modify_new</primary></indexterm><programlisting><link linkend="GNOME-Evolution-Addressbook-BookChangeItem">GNOME_Evolution_Addressbook_BookChangeItem</link>* e_book_backend_change_modify_new
                                                        (const <link linkend="char">char</link> *vcard);</programlisting>
<para>
Creates a new change item indicating <parameter>vcard</parameter> was modified.
Meant to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>vcard</parameter>&#160;:</term>
<listitem><simpara> a VCard string
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A new <link linkend="GNOME-Evolution-Addressbook-BookChangeItem"><type>GNOME_Evolution_Addressbook_BookChangeItem</type></link>.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="e-book-backend-change-delete-new" role="function">
<title>e_book_backend_change_delete_new ()</title>
<indexterm zone="e-book-backend-change-delete-new"><primary sortas="e_book_backend_change_delete_new">e_book_backend_change_delete_new</primary></indexterm><programlisting><link linkend="GNOME-Evolution-Addressbook-BookChangeItem">GNOME_Evolution_Addressbook_BookChangeItem</link>* e_book_backend_change_delete_new
                                                        (const <link linkend="char">char</link> *id);</programlisting>
<para>
Creates a new change item indicating <parameter>vcard</parameter> was deleted.
Meant to be used by backend implementations.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>id</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A new <link linkend="GNOME-Evolution-Addressbook-BookChangeItem"><type>GNOME_Evolution_Addressbook_BookChangeItem</type></link>.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="EBookBackendClass" role="struct">
<title>struct EBookBackendClass</title>
<indexterm zone="EBookBackendClass"><primary sortas="EBookBackendClass">EBookBackendClass</primary></indexterm><programlisting>struct EBookBackendClass {
	GObjectClass parent_class;

	/* Virtual methods */
	GNOME_Evolution_Addressbook_CallStatus (*load_source) (EBookBackend *backend, ESource *source, gboolean only_if_exists);
	void (*remove) (EBookBackend *backend, EDataBook *book, guint32 opid);
        char *(*get_static_capabilities) (EBookBackend *backend);

	void (*create_contact)  (EBookBackend *backend, EDataBook *book, guint32 opid, const char *vcard);
	void (*remove_contacts) (EBookBackend *backend, EDataBook *book, guint32 opid, GList *id_list);
	void (*modify_contact)  (EBookBackend *backend, EDataBook *book, guint32 opid, const char *vcard);
	void (*get_contact) (EBookBackend *backend, EDataBook *book, guint32 opid, const char *id);
	void (*get_contact_list) (EBookBackend *backend, EDataBook *book, guint32 opid, const char *query);
	void (*start_book_view) (EBookBackend *backend, EDataBookView *book_view);
	void (*stop_book_view) (EBookBackend *backend, EDataBookView *book_view);
	void (*get_changes) (EBookBackend *backend, EDataBook *book, guint32 opid, const char *change_id);
	void (*authenticate_user) (EBookBackend *backend, EDataBook *book, guint32 opid, const char *user, const char *passwd, const char *auth_method);
	void (*get_required_fields) (EBookBackend *backend, EDataBook *bokk, guint32 opid);
	void (*get_supported_fields) (EBookBackend *backend, EDataBook *book, guint32 opid);
	void (*get_supported_auth_methods) (EBookBackend *backend, EDataBook *book, guint32 opid);
	GNOME_Evolution_Addressbook_CallStatus (*cancel_operation) (EBookBackend *backend, EDataBook *book);
	void (*set_mode) (EBookBackend *backend, GNOME_Evolution_Addressbook_BookMode  mode);

	/* Notification signals */
	void (* last_client_gone) (EBookBackend *backend);

	void (*sync) (EBookBackend *backend);

	/* Padding for future expansion */
	void (*_pas_reserved1) (void);
	void (*_pas_reserved2) (void);
	void (*_pas_reserved3) (void);
	void (*_pas_reserved4) (void);
};
</programlisting>
<para>
</para></refsect2>

</refsect1>

<refsect1 id="EBookBackend.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="EBookBackend-last-client-gone"><title>The <literal>&quot;last-client-gone&quot;</literal> signal</title>
<indexterm zone="EBookBackend-last-client-gone"><primary sortas="EBookBackend::last-client-gone">EBookBackend::last-client-gone</primary></indexterm><programlisting><link linkend="void">void</link>                user_function                      (<link linkend="EBookBackend">EBookBackend</link> *ebookbackend,
                                                        <link linkend="gpointer">gpointer</link>      user_data)         : Run First</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>ebookbackend</parameter>&#160;:</term>
<listitem><simpara>the object which received the signal.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>user_data</parameter>&#160;:</term>
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
</variablelist></refsect2>
</refsect1>



</refentry>
