| Evolution Utilities Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Implemented Interfaces | Properties | ||||
#include <e-util/e-util.h> struct EPhotoCache; EPhotoCache * e_photo_cache_new (EClientCache *client_cache); EClientCache * e_photo_cache_ref_client_cache (EPhotoCache *photo_cache); void e_photo_cache_add_photo_source (EPhotoCache *photo_cache,EPhotoSource *photo_source); GList * e_photo_cache_list_photo_sources (EPhotoCache *photo_cache); gboolean e_photo_cache_remove_photo_source (EPhotoCache *photo_cache,EPhotoSource *photo_source); void e_photo_cache_add_photo (EPhotoCache *photo_cache,const gchar *email_address,GBytes *bytes); gboolean e_photo_cache_remove_photo (EPhotoCache *photo_cache,const gchar *email_address); gboolean e_photo_cache_get_photo_sync (EPhotoCache *photo_cache,const gchar *email_address,GCancellable *cancellable,GInputStream **out_stream,GError **error); void e_photo_cache_get_photo (EPhotoCache *photo_cache,const gchar *email_address,GCancellable *cancellable,GAsyncReadyCallback callback,gpointer user_data); gboolean e_photo_cache_get_photo_finish (EPhotoCache *photo_cache,GAsyncResult *result,GInputStream **out_stream,GError **error);
EPhotoCache finds photos associated with an email address.
A limited internal cache is employed to speed up frequently searched email addresses. The exact caching semantics are private and subject to change.
struct EPhotoCache;
Contains only private data that should be read and manipulated using the functions below.
EPhotoCache * e_photo_cache_new (EClientCache *client_cache);
Creates a new EPhotoCache instance.
|
an EClientCache |
Returns : |
an EPhotoCache |
EClientCache * e_photo_cache_ref_client_cache (EPhotoCache *photo_cache);
Returns the EClientCache passed to e_photo_cache_new().
The returned EClientCache is referenced for thread-safety and must be
unreferenced with g_object_unref() when finished with it.
|
an EPhotoCache |
Returns : |
an EClientCache |
void e_photo_cache_add_photo_source (EPhotoCache *photo_cache,EPhotoSource *photo_source);
Adds photo_source as a potential source of photos.
|
an EPhotoCache |
|
an EPhotoSource |
GList * e_photo_cache_list_photo_sources (EPhotoCache *photo_cache);
Returns a list of photo sources for photo_cache.
The sources returned in the list are referenced for thread-safety.
They must each be unreferenced with g_object_unref() when finished
with them. Free the returned list itself with g_list_free().
An easy way to free the list property in one step is as follows:
1 |
g_list_free_full (list, g_object_unref); |
|
an EPhotoCache |
Returns : |
a sorted list of photo sources |
gboolean e_photo_cache_remove_photo_source (EPhotoCache *photo_cache,EPhotoSource *photo_source);
Removes photo_source as a potential source of photos.
|
an EPhotoCache |
|
an EPhotoSource |
Returns : |
TRUE if photo_source was found and removed, FALSE if not |
void e_photo_cache_add_photo (EPhotoCache *photo_cache,const gchar *email_address,GBytes *bytes);
Adds a cache entry for email_address, such that subsequent photo requests
for email_address will yield a GMemoryInputStream loaded with bytes
without consulting available photo sources.
The bytes argument can also be NULL to indicate no photo is available for
email_address. Subsequent photo requests for email_address will yield no
input stream.
The entry may be removed without notice however, subject to photo_cache's
internal caching policy.
|
an EPhotoCache |
|
an email address |
|
a GBytes containing photo data, or NULL
|
gboolean e_photo_cache_remove_photo (EPhotoCache *photo_cache,const gchar *email_address);
Removes the cache entry for email_address, if such an entry exists.
|
an EPhotoCache |
|
an email address |
Returns : |
TRUE if a cache entry was found and removed |
gboolean e_photo_cache_get_photo_sync (EPhotoCache *photo_cache,const gchar *email_address,GCancellable *cancellable,GInputStream **out_stream,GError **error);
Searches available photo sources for a photo associated with
email_address.
If a match is found, a GInputStream from which to read image data is
returned through the out_stream return location. If no match is found,
the out_stream return location is set to NULL.
The return value indicates whether the search completed successfully,
not whether a match was found. If an error occurs, the function will
set error and return FALSE.
|
an EPhotoCache |
|
an email address |
|
optional GCancellable object, or NULL
|
|
return location for a GInputStream, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
whether the search completed successfully |
void e_photo_cache_get_photo (EPhotoCache *photo_cache,const gchar *email_address,GCancellable *cancellable,GAsyncReadyCallback callback,gpointer user_data);
Asynchronously searches available photo sources for a photo associated
with email_address.
When the operation is finished, callback will be called. You can then
call e_photo_cache_get_photo_finish() to get the result of the operation.
|
an EPhotoCache |
|
an email address |
|
optional GCancellable object, or NULL
|
|
a GAsyncReadyCallback to call when the request is satisfied |
|
data to pass to the callback function |
gboolean e_photo_cache_get_photo_finish (EPhotoCache *photo_cache,GAsyncResult *result,GInputStream **out_stream,GError **error);
Finishes the operation started with e_photo_cache_get_photo().
If a match was found, a GInputStream from which to read image data is
returned through the out_stream return location. If no match was found,
the out_stream return location is set to NULL.
The return value indicates whether the search completed successfully,
not whether a match was found. If an error occurred, the function will
set error and return FALSE.
|
an EPhotoCache |
|
a GAsyncResult |
|
return location for a GInputStream, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
whether the search completed successfully |
"client-cache" property"client-cache" EClientCache* : Read / Write / Construct Only
Cache of shared EClient instances.