## kolab-util-contact-cache kolab-util-contact-cache |

## Synopsis

    gboolean            kolab_util_contact_cache_assure_uid_on_econtact
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             EContact *econtact,
                                                             const gchar *uri,
                                                             gboolean bulk,
                                                             GCancellable *cancellable,
                                                             GError **error);
    GList *             kolab_util_contact_cache_get_contacts
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *query,
                                                             const gchar *uri,
                                                             GCancellable *cancellable,
                                                             GError **error);
    EContact *          kolab_util_contact_cache_get_object (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *uri,
                                                             const gchar *uid,
                                                             gboolean bulk,
                                                             GCancellable *cancellable,
                                                             GError **error);
    gboolean            kolab_util_contact_cache_update_object
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *uri,
                                                             const gchar *uid,
                                                             gboolean bulk,
                                                             GCancellable *cancellable,
                                                             GError **error);
    gboolean            kolab_util_contact_cache_update_on_query
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *query,
                                                             const gchar *uri,
                                                             GCancellable *cancellable,
                                                             GError **error);

## Description

## Details

### kolab_util_contact_cache_assure_uid_on_econtact ()

    gboolean            kolab_util_contact_cache_assure_uid_on_econtact
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             EContact *econtact,
                                                             const gchar *uri,
                                                             gboolean bulk,
                                                             GCancellable *cancellable,
                                                             GError **error);

Sets a new uid to econtact and assures that it is not yet used in `koma`.

`cache` : | An EBookBackendCache.
`koma` : | A KolabMailAccess instance.
`econtact` : | An EContact.
`uri` : | An EContact uri string.
`bulk` : | Whether or not this is a mass operation.
`cancellable` : | A cancellation stack.
`error` : | GError placeholder.
Returns : | On Success TRUE is returned.

### kolab_util_contact_cache_get_contacts ()

    GList *             kolab_util_contact_cache_get_contacts
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *query,
                                                             const gchar *uri,
                                                             GCancellable *cancellable,
                                                             GError **error);

### kolab_util_contact_cache_get_object ()

    EContact *          kolab_util_contact_cache_get_object (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *uri,
                                                             const gchar *uid,
                                                             gboolean bulk,
                                                             GCancellable *cancellable,
                                                             GError **error);

### kolab_util_contact_cache_update_object ()

    gboolean            kolab_util_contact_cache_update_object
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *uri,
                                                             const gchar *uid,
                                                             gboolean bulk,
                                                             GCancellable *cancellable,
                                                             GError **error);

### kolab_util_contact_cache_update_on_query ()

    gboolean            kolab_util_contact_cache_update_on_query
                                                            (EBookBackendCache *cache,
                                                             KolabMailAccess *koma,
                                                             const gchar *query,
                                                             const gchar *uri,
                                                             GCancellable *cancellable,
                                                             GError **error);

Retrieves the changed and not yet cached objects and puts them into the `cache`.

`cache` : | An EBookBackendCache instance.
`koma` : | A KolabMailAccess object.
`query` : | The query string associated with the update operation.
`uri` : | The URI string for access to the `koma` object.
`cancellable` : | A cancellation stack.
`error` : | A GError placeholder.
Returns : | TRUE on success.