## EBookClientView EBookClientView |

## Synopsis

    struct              EBookClientView;
    struct _EBookClient * e_book_client_view_get_client     (EBookClientView *view);
    gboolean            e_book_client_view_is_running       (EBookClientView *view);
    void                e_book_client_view_set_fields_of_interest
                                                            (EBookClientView *view,
                                                             const GSList *fields_of_interest,
                                                             GError **error);
    void                e_book_client_view_start            (EBookClientView *view,
                                                             GError **error);
    void                e_book_client_view_stop             (EBookClientView *view,
                                                             GError **error);

## Object Hierarchy

      GObject
       +----EBookClientView

## Signals

      "complete"                                       : Run Last
      "objects-added"                                  : Run Last
      "objects-modified"                               : Run Last
      "objects-removed"                                : Run Last
      "progress"                                       : Run Last

## Description

## Details

### struct EBookClientView

    struct EBookClientView;

### e_book_client_view_get_client ()

    struct _EBookClient * e_book_client_view_get_client     (EBookClientView *view);

Returns the EBookClient that this book view is monitoring.

`view` : | an EBookClientView
Returns : | an EBookClient. [transfer none]

### e_book_client_view_is_running ()

    gboolean            e_book_client_view_is_running       (EBookClientView *view);

### e_book_client_view_set_fields_of_interest ()

    void                e_book_client_view_set_fields_of_interest
                                                            (EBookClientView *view,
                                                             const GSList *fields_of_interest,
                                                             GError **error);

Client can instruct server to which fields it is interested in only, thus the server can return less data over the wire. The server can still return complete objects, this is just a hint to it that the listed fields will be used only. The UID field is returned always. Initial views has no fields of interest and using `NULL` for `fields_of_interest` will unset any previous changes.

Some backends can use summary information of its cache to create artifical objects, which will omit stored object parsing. If this cannot be done then it will simply return object as is stored in the cache.

`view` : | An EBookClientView object
`fields_of_interest` : | List of field names in which the client is interested
`error` : | A GError

### e_book_client_view_start ()

    void                e_book_client_view_start            (EBookClientView *view,
                                                             GError **error);

Tells `view` to start processing events.

`view` : | an EBookClientView
`error` : | A GError

### e_book_client_view_stop ()

    void                e_book_client_view_stop             (EBookClientView *view,
                                                             GError **error);

Tells `view` to stop processing events.

`view` : | an EBookClientView
`error` : | A GError

## Signal Details

### The `"complete"` signal

    void                user_function                      (EBookClientView *ebookclientview,
                                                            GError          *arg1,
                                                            gpointer         user_data)            : Run Last

`ebookclientview` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.

### The `"objects-added"` signal

    void                user_function                      (EBookClientView *ebookclientview,
                                                            gpointer         arg1,
                                                            gpointer         user_data)            : Run Last

`ebookclientview` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.

### The `"objects-modified"` signal

    void                user_function                      (EBookClientView *ebookclientview,
                                                            gpointer         arg1,
                                                            gpointer         user_data)            : Run Last

`ebookclientview` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.

### The `"objects-removed"` signal

    void                user_function                      (EBookClientView *ebookclientview,
                                                            gpointer         arg1,
                                                            gpointer         user_data)            : Run Last

`ebookclientview` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.

### The `"progress"` signal

    void                user_function                      (EBookClientView *ebookclientview,
                                                            guint            arg1,
                                                            gchar           *arg2,
                                                            gpointer         user_data)            : Run Last

`ebookclientview` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.