## EDataBook EDataBook |

## Synopsis

    struct              EDataBook;
    #define             E_DATA_BOOK_ERROR
    GError *            e_data_book_create_error            (EDataBookStatus status,
                                                             const gchar *custom_msg);
    GError *            e_data_book_create_error_fmt        (EDataBookStatus status,
                                                             const gchar *custom_msg_fmt,
                                                             ...);
    const gchar *       e_data_book_status_to_string        (EDataBookStatus status);
    #define             e_return_data_book_error_if_fail    (expr,
                                                             _code)
    EDataBook *         e_data_book_new                     (EBookBackend *backend,
                                                             ESource *source);
    guint               e_data_book_register_gdbus_object   (EDataBook *cal,
                                                             GDBusConnection *connection,
                                                             const gchar *object_path,
                                                             GError **error);
    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,
                                                             GError *error);
    void                e_data_book_respond_remove          (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error);
    void                e_data_book_respond_create          (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             EContact *contact);
    void                e_data_book_respond_remove_contacts (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *ids);
    void                e_data_book_respond_modify          (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             EContact *contact);
    void                e_data_book_respond_authenticate_user
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error);
    void                e_data_book_respond_get_supported_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *fields);
    void                e_data_book_respond_get_required_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *fields);
    void                e_data_book_respond_get_supported_auth_methods
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *fields);
    void                e_data_book_respond_get_contact     (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             const gchar *vcard);
    void                e_data_book_respond_get_contact_list
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *cards);
    void                e_data_book_respond_get_changes     (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             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
       +----EDataBook

## Description

## Details

### struct EDataBook

    struct EDataBook;

### E_DATA_BOOK_ERROR

    #define E_DATA_BOOK_ERROR e_data_book_error_quark ()

Since 2.30

### e_data_book_create_error ()

    GError *            e_data_book_create_error            (EDataBookStatus status,
                                                             const gchar *custom_msg);

`status` : | EDataBookStatus code
`custom_msg` : | Custom message to use for the error. When NULL, then uses a default message based on the `status` code.
Returns : | NULL, when the `status` is E_DATA_BOOK_STATUS_SUCCESS, or a newly allocated GError, which should be freed with `g_error_free()` call.

Since 2.32

### e_data_book_create_error_fmt ()

    GError *            e_data_book_create_error_fmt        (EDataBookStatus status,
                                                             const gchar *custom_msg_fmt,
                                                             ...);

Similar as `e_data_book_create_error()`, only here, instead of custom_msg, is used a `printf()` format to create a custom_msg for the error.

`status` : |
`custom_msg_fmt` : |
`...` : |
Returns : |

Since 2.32

### e_data_book_status_to_string ()

    const gchar *       e_data_book_status_to_string        (EDataBookStatus status);

`status` : |
Returns : |

Since 2.32

### e_return_data_book_error_if_fail()

    #define             e_return_data_book_error_if_fail(expr, _code)

`expr` : |
`_code` : |

Since 2.32

### e_data_book_new ()

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

`backend` : |
`source` : |
Returns : |

### e_data_book_register_gdbus_object ()

    guint               e_data_book_register_gdbus_object   (EDataBook *cal,
                                                             GDBusConnection *connection,
                                                             const gchar *object_path,
                                                             GError **error);

Registers GDBus object of this EDataBook.

`cal` : |
`connection` : |
`object_path` : |
`error` : |
Returns : |

Since 2.32

### e_data_book_get_backend ()

    EBookBackend *      e_data_book_get_backend             (EDataBook *book);

`book` : |
Returns : |

### e_data_book_get_source ()

    ESource *           e_data_book_get_source              (EDataBook *book);

`book` : |
Returns : |

### e_data_book_respond_open ()

    void                e_data_book_respond_open            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error);

`book` : |
`opid` : |
`error` : |

### e_data_book_respond_remove ()

    void                e_data_book_respond_remove          (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error);

`book` : |
`opid` : |
`error` : |

### e_data_book_respond_create ()

    void                e_data_book_respond_create          (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             EContact *contact);

`book` : |
`opid` : |
`error` : |
`contact` : |

### e_data_book_respond_remove_contacts ()

    void                e_data_book_respond_remove_contacts (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *ids);

`book` : |
`opid` : |
`error` : |
`ids` : |

### e_data_book_respond_modify ()

    void                e_data_book_respond_modify          (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             EContact *contact);

`book` : |
`opid` : |
`error` : |
`contact` : |

### e_data_book_respond_authenticate_user ()

    void                e_data_book_respond_authenticate_user
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error);

`book` : |
`opid` : |
`error` : |

### e_data_book_respond_get_supported_fields ()

    void                e_data_book_respond_get_supported_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *fields);

`book` : |
`opid` : |
`error` : |
`fields` : |

### e_data_book_respond_get_required_fields ()

    void                e_data_book_respond_get_required_fields
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *fields);

`book` : |
`opid` : |
`error` : |
`fields` : |

### e_data_book_respond_get_supported_auth_methods ()

    void                e_data_book_respond_get_supported_auth_methods
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *fields);

`book` : |
`opid` : |
`error` : |
`fields` : |

### e_data_book_respond_get_contact ()

    void                e_data_book_respond_get_contact     (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             const gchar *vcard);

`book` : |
`opid` : |
`error` : |
`vcard` : |

### e_data_book_respond_get_contact_list ()

    void                e_data_book_respond_get_contact_list
                                                            (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *cards);

`book` : |
`opid` : |
`error` : |
`cards` : |

### e_data_book_respond_get_changes ()

    void                e_data_book_respond_get_changes     (EDataBook *book,
                                                             guint32 opid,
                                                             GError *error,
                                                             GList *changes);

`book` : |
`opid` : |
`error` : |
`changes` : |

### e_data_book_report_writable ()

    void                e_data_book_report_writable         (EDataBook *book,
                                                             gboolean writable);

`book` : |
`writable` : |

### e_data_book_report_connection_status ()

    void                e_data_book_report_connection_status
                                                            (EDataBook *book,
                                                             gboolean is_online);

`book` : |
`is_online` : |

### e_data_book_report_auth_required ()

    void                e_data_book_report_auth_required    (EDataBook *book);

`book` : |