## EDataBook EDataBook |

## Synopsis

    struct              EDataBook;
    EDataBook*          e_data_book_new                     (EBookBackend *backend,
                                                             ESource *source,
                                                             GNOME_Evolution_Addressbook_BookListener listener);
    GNOME_Evolution_Addressbook_BookListener e_data_book_get_listener
                                                            (EDataBook *book);
    EBookBackend*       e_data_book_get_backend             (EDataBook *book);
    ESource*            e_data_book_get_source              (EDataBook *book);
    void                e_data_book_respond_open            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status);
    void                e_data_book_respond_remove          (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status);
    void                e_data_book_respond_create          (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             EContact *contact);
    void                e_data_book_respond_remove_contacts (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *ids);
    void                e_data_book_respond_modify          (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             EContact *contact);
    void                e_data_book_respond_authenticate_user
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status);
    void                e_data_book_respond_get_supported_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *fields);
    void                e_data_book_respond_get_required_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *fields);
    void                e_data_book_respond_get_supported_auth_methods
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *fields);
    void                e_data_book_respond_get_book_view   (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             EDataBookView *book_view);
    void                e_data_book_respond_get_contact     (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             char *vcard);
    void                e_data_book_respond_get_contact_list
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *cards);
    void                e_data_book_respond_get_changes     (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *changes);
    void                e_data_book_report_writable         (EDataBook *book,
                                                             gboolean writable);
    void                e_data_book_report_connection_status
                                                            (EDataBook *book,
                                                             gboolean is_online);
    void                e_data_book_report_auth_required    (EDataBook *book);

## Object Hierarchy

      GObject
       +----BonoboObject
             +----EDataBook

## Description

## Details

### struct EDataBook

    struct EDataBook;

### e_data_book_new ()

    EDataBook*          e_data_book_new                     (EBookBackend *backend,
                                                             ESource *source,
                                                             GNOME_Evolution_Addressbook_BookListener listener);

Create a new EDataBook using `backend` for storage, `source` as the storage location and `listener` for reporting status.

`backend` : | an EBookBackend
`source` : | an ESource
`listener` : | a GNOME_Evolution_Addressbook_BookListener CORBA object
Returns : | A new EDataBook.

### e_data_book_get_listener ()

    GNOME_Evolution_Addressbook_BookListener e_data_book_get_listener
                                                            (EDataBook *book);

Gets the CORBA listener associated with `book`.

`book` : | an EDataBook
Returns : | A GNOME_Evolution_Addressbook_BookListener.

### e_data_book_get_backend ()

    EBookBackend*       e_data_book_get_backend             (EDataBook *book);

Gets the EBookBackend being used to store data for `book`.

`book` : | an EDataBook
Returns : | The EBookBackend being used.

### e_data_book_get_source ()

    ESource*            e_data_book_get_source              (EDataBook *book);

Gets the ESource associated with `book`.

`book` : | an EDataBook
Returns : | An ESource.

### e_data_book_respond_open ()

    void                e_data_book_respond_open            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status);

Respond to an 'open' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation

### e_data_book_respond_remove ()

    void                e_data_book_respond_remove          (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status);

Respond to a 'remove' request to remove all of `book`'s data, specified by `opid`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation

### e_data_book_respond_create ()

    void                e_data_book_respond_create          (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             EContact *contact);

Respond to a 'create' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`contact` : | the contact created, or `NULL`

### e_data_book_respond_remove_contacts ()

    void                e_data_book_respond_remove_contacts (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *ids);

Respond to a 'remove contacts' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`ids` : | a list of contact IDs removed

### e_data_book_respond_modify ()

    void                e_data_book_respond_modify          (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             EContact *contact);

Respond to a 'modify' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`contact` : | the modified EContact

### e_data_book_respond_authenticate_user ()

    void                e_data_book_respond_authenticate_user
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status);

Respond to an 'authenticate' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation

### e_data_book_respond_get_supported_fields ()

    void                e_data_book_respond_get_supported_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *fields);

Respond to a 'get supported fields' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`fields` : | a list of supported field names

### e_data_book_respond_get_required_fields ()

    void                e_data_book_respond_get_required_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *fields);

Respond to a 'get required fields' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`fields` : | a list of required field names

### e_data_book_respond_get_supported_auth_methods ()

    void                e_data_book_respond_get_supported_auth_methods
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *fields);

Respond to a 'get supported auth methods' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`fields` : |

### e_data_book_respond_get_book_view ()

    void                e_data_book_respond_get_book_view   (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             EDataBookView *book_view);

Respond to a 'get book view' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`book_view` : | the EDataBookView created

### e_data_book_respond_get_contact ()

    void                e_data_book_respond_get_contact     (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             char *vcard);

Respond to a 'get contact' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`vcard` : | the found VCard, or `NULL`

### e_data_book_respond_get_contact_list ()

    void                e_data_book_respond_get_contact_list
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *cards);

Respond to a 'get contact list' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`cards` : |

### e_data_book_respond_get_changes ()

    void                e_data_book_respond_get_changes     (EDataBook *book,
                                                             guint32 opid,
                                                             GNOME_Evolution_Addressbook_CallStatus status,
                                                             GList *changes);

Respond to a 'get changes' request specified by `opid` on `book`, indicating `status` as the outcome.

`book` : | an EDataBook
`opid` : | the operation ID that generated the response
`status` : | the outcome of the operation
`changes` : | a list of GNOME_Evolution_Addressbook_BookChangeItem items

### e_data_book_report_writable ()

    void                e_data_book_report_writable         (EDataBook *book,
                                                             gboolean writable);

Notify listeners that `book`'s writeable status has changed to `writable`.

`book` : | an EDataBook
`writable` : | `TRUE` if `book` is writeable, `FALSE` otherwise

### e_data_book_report_connection_status ()

    void                e_data_book_report_connection_status
                                                            (EDataBook *book,
                                                             gboolean is_online);

Notify listeners that `book` requires authentication.

`book` : | an EDataBook
`is_online` : |

### e_data_book_report_auth_required ()

    void                e_data_book_report_auth_required    (EDataBook *book);

`book` : |