![]() |
![]() |
![]() |
Mission Control Plugins Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
#include <mission-control-plugins/mission-control-plugins.h> #define MCP_ACCOUNT_STORAGE_PLUGIN_PRIO_READONLY #define MCP_ACCOUNT_STORAGE_PLUGIN_PRIO_DEFAULT #define MCP_ACCOUNT_STORAGE_PLUGIN_PRIO_NORMAL #define MCP_ACCOUNT_STORAGE_PLUGIN_PRIO_KEYRING struct McpAccountStorage; gint mcp_account_storage_priority (const McpAccountStorage *storage
); gboolean mcp_account_storage_get (const McpAccountStorage *storage
,McpAccountManager *am
,const gchar *account
,const gchar *key
); gboolean mcp_account_storage_set (const McpAccountStorage *storage
,const McpAccountManager *am
,const gchar *account
,const gchar *key
,const gchar *value
); gchar * mcp_account_storage_create (const McpAccountStorage *storage
,const McpAccountManager *am
,const gchar *manager
,const gchar *protocol
,GHashTable *params
,GError **error
); gboolean mcp_account_storage_delete (const McpAccountStorage *storage
,const McpAccountManager *am
,const gchar *account
,const gchar *key
); void mcp_account_storage_ready (const McpAccountStorage *storage
,const McpAccountManager *am
); gboolean mcp_account_storage_commit (const McpAccountStorage *storage
,const McpAccountManager *am
); gboolean mcp_account_storage_commit_one (const McpAccountStorage *storage
,const McpAccountManager *am
,const gchar *account
); GList * mcp_account_storage_list (const McpAccountStorage *storage
,const McpAccountManager *am
); void mcp_account_storage_get_identifier (const McpAccountStorage *storage
,const gchar *account
,GValue *identifier
); GHashTable * mcp_account_storage_get_additional_info (const McpAccountStorage *storage
,const gchar *account
); guint mcp_account_storage_get_restrictions (const McpAccountStorage *storage
,const gchar *account
); const gchar * mcp_account_storage_name (const McpAccountStorage *storage
); const gchar * mcp_account_storage_description (const McpAccountStorage *storage
); const gchar * mcp_account_storage_provider (const McpAccountStorage *storage
); gboolean mcp_account_storage_owns (McpAccountStorage *storage
,McpAccountManager *am
,const gchar *account
); gboolean mcp_account_storage_set_attribute (McpAccountStorage *storage
,McpAccountManager *am
,const gchar *account
,const gchar *attribute
,GVariant *value
,McpAttributeFlags flags
); gboolean mcp_account_storage_set_parameter (McpAccountStorage *storage
,McpAccountManager *am
,const gchar *account
,const gchar *parameter
,GVariant *value
,McpParameterFlags flags
); void mcp_account_storage_emit_created (McpAccountStorage *storage
,const gchar *account
); void mcp_account_storage_emit_altered (McpAccountStorage *storage
,const gchar *account
); void mcp_account_storage_emit_altered_one (McpAccountStorage *storage
,const gchar *account
,const gchar *key
); void mcp_account_storage_emit_deleted (McpAccountStorage *storage
,const gchar *account
); void mcp_account_storage_emit_toggled (McpAccountStorage *storage
,const gchar *account
,gboolean enabled
); void mcp_account_storage_emit_reconnect (McpAccountStorage *storage
,const gchar *account
); McpAccountStorageIface;
Plugins may implement McpAccountStorage in order to provide account parameter storage backends to the AccountManager object.
To do so, the plugin must implement a GObject subclass that implements
McpAccountStorage, then return an instance of that subclass from
mcp_plugin_ref_nth_object()
.
Many methods take "the unique name of an account" as an argument.
In this plugin, that means the unique "tail" of the account's
object path, for instance "gabble/jabber/chris_40example_2ecom".
The account's full object path is obtained by prepending
TP_ACCOUNT_OBJECT_PATH_BASE
.
A complete implementation of this interface with all methods would look something like this: