Top |
FolksPersonaStoreFolksPersonaStore — A store for FolksPersonas. |
#define | FOLKS_TYPE_PERSONA_STORE |
struct | FolksPersonaStore |
struct | FolksPersonaStoreClass |
enum | FolksPersonaStoreTrust |
enum | FolksPersonaDetail |
enum | FolksPersonaStoreError |
After creating a PersonaStore instance, you must connect to the "personas-changed" signal, then call
, otherwise a race condition may occur between emission of "personas-changed" and your code connecting to it.folks_persona_store_prepare()
#define FOLKS_TYPE_PERSONA_STORE (folks_persona_store_get_type ())
The type for FolksPersonaStore.
struct FolksPersonaStore { GObject parent_instance; FolksPersonaStorePrivate * priv; };
A store for FolksPersonas.
After creating a PersonaStore instance, you must connect to the "personas-changed" signal, then call
, otherwise a race condition may occur between emission of "personas-changed" and your code connecting to it.folks_persona_store_prepare()
struct FolksPersonaStoreClass { GObjectClass parent_class; void (*prepare) (FolksPersonaStore* self, GAsyncReadyCallback _callback_, gpointer _user_data_); void (*prepare_finish) (FolksPersonaStore* self, GAsyncResult* _res_, GError** error); void (*flush) (FolksPersonaStore* self, GAsyncReadyCallback _callback_, gpointer _user_data_); void (*flush_finish) (FolksPersonaStore* self, GAsyncResult* _res_); void (*add_persona_from_details) (FolksPersonaStore* self, GHashTable* details, GAsyncReadyCallback _callback_, gpointer _user_data_); FolksPersona* (*add_persona_from_details_finish) (FolksPersonaStore* self, GAsyncResult* _res_, GError** error); void (*remove_persona) (FolksPersonaStore* self, FolksPersona* persona, GAsyncReadyCallback _callback_, gpointer _user_data_); void (*remove_persona_finish) (FolksPersonaStore* self, GAsyncResult* _res_, GError** error); const gchar* (*get_type_id) (FolksPersonaStore* self); GeeMap* (*get_personas) (FolksPersonaStore* self); FolksMaybeBool (*get_can_add_personas) (FolksPersonaStore* self); FolksMaybeBool (*get_can_alias_personas) (FolksPersonaStore* self); FolksMaybeBool (*get_can_group_personas) (FolksPersonaStore* self); FolksMaybeBool (*get_can_remove_personas) (FolksPersonaStore* self); gboolean (*get_is_prepared) (FolksPersonaStore* self); gboolean (*get_is_quiescent) (FolksPersonaStore* self); gchar** (*get_always_writeable_properties) (FolksPersonaStore* self, gint* result_length1); };
The class structure for FOLKS_TYPE_PERSONA_STORE
. All the fields in this structure are private and should never be accessed directly.
virtual method called by |
||
asynchronous finish function for |
||
virtual method called by |
||
asynchronous finish function for |
||
virtual method called by |
||
asynchronous finish function for |
||
virtual method called by |
||
asynchronous finish function for |
||
getter method for the abstract property "type-id" |
||
getter method for the abstract property "personas" |
||
getter method for the abstract property "can-add-personas" |
||
getter method for the abstract property "can-alias-personas" |
||
getter method for the abstract property "can-group-personas" |
||
getter method for the abstract property "can-remove-personas" |
||
getter method for the abstract property "is-prepared" |
||
getter method for the abstract property "is-quiescent" |
||
getter method for the abstract property "always-writeable-properties" |
Trust level for a FolksPersonaStore's FolksPersonas for linking purposes.
Trust levels are set internally by the backends, and must not be modified by clients.
The FolksPersonas aren't trusted at all, and cannot be linked. This should be used for FolksPersonaStores where even the FolksPersona UID could be maliciously edited to corrupt FolksPersona links, or where the UID changes regularly. |
||
Only the "uid" property is trusted for linking. In practice, this means that FolksPersonas from this FolksPersonaStore will not contribute towards the linking process, but can be linked together by their UIDs using data from FolksPersonas from a fully-trusted FolksPersonaStore. |
||
Every property in "linkable-properties" is trusted. This should only be used for user-controlled FolksPersonaStores, as if a remote store is compromised, malicious changes could be made to its data which corrupt the user's FolksPersona links. |
Since: 0.1.13
Definition of the available fields to be looked up with
.folks_persona_store_detail_key()
Invalid field for use in error returns. |
||
Field for "alias". |
||
Field for "avatar". |
||
Field for "birthday". |
||
Field for "email-addresses". |
||
Field for "full-name". |
||
Field for "gender". |
||
Field for "im-addresses". |
||
Field for "is-favourite". |
||
Field for "local-ids". |
||
Field for "location". |
||
Field for "nickname". |
||
Field for "notes". |
||
Field for "phone-numbers". |
||
Field for "postal-addresses". |
||
Field for "roles". |
||
Field for "structured-name". |
||
Field for "urls". |
||
Field for "web-service-addresses". |
||
Field for "groups". |
||
Field for "im-interaction-count". |
||
Field for "last-im-interaction-datetime". |
||
Field for "call-interaction-count". |
||
Field for "last-call-interaction-datetime". |
||
Field for "anti-links". |
||
Field for FolksExtendedFieldDetails. |
Since: 0.5.0
Errors from FolksPersonaStores.
An argument to the method was invalid. |
||
Creation of a FolksPersona failed. |
||
Such an operation may not be performed on a FolksPersona with "is-user" set to |
||
The FolksPersonaStore was offline (ie, this is a temporary failure). |
||
The FolksPersonaStore doesn't support write operations. |
||
The operation was denied due to not having sufficient permissions. |
||
Removal of a FolksPersona failed. This is a generic error which is used if no other error code (such as, e.g., |
||
Such an operation may only be performed on a FolksPersona with "is-user" set to |