McpAccountManager

McpAccountManager — Object representing the account manager, implemented by Mission Control

Synopsis

#include <mission-control-plugins/mission-control-plugins.h>

                    McpAccountManager;
                    McpAccountManagerIface;
gchar *             mcp_account_manager_get_unique_name (McpAccountManager *mcpa,
                                                         const gchar *manager,
                                                         const gchar *protocol,
                                                         const GHashTable *params);
gchar *             mcp_account_manager_get_value       (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key);
GStrv               mcp_account_manager_list_keys       (const McpAccountManager *mcpa,
                                                         const gchar *account);
gboolean            mcp_account_manager_parameter_is_secret
                                                        (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key);
void                mcp_account_manager_parameter_make_secret
                                                        (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key);
void                mcp_account_manager_set_value       (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key,
                                                         const gchar *value);

Object Hierarchy

  GInterface
   +----McpAccountManager

Prerequisites

McpAccountManager requires GObject.

Description

This object represents the Telepathy AccountManager.

Most virtual methods on the McpAccountStorageIface interface receive an object provided by Mission Control that implements this interface. It can be used to manipulate Mission Control's in-memory cache of accounts.

Only Mission Control should implement this interface.

Details

McpAccountManager

typedef struct _McpAccountManager McpAccountManager;

McpAccountManagerIface

typedef struct _McpAccountManagerIface McpAccountManagerIface;

mcp_account_manager_get_unique_name ()

gchar *             mcp_account_manager_get_unique_name (McpAccountManager *mcpa,
                                                         const gchar *manager,
                                                         const gchar *protocol,
                                                         const GHashTable *params);

Generate and return the canonical unique name of this [new] account. Should not be called for accounts which have already had a name assigned: Intended for use when a plugin encounters an account which MC has not previously seen before (ie one created by a 3rd party in the back-end that the plugin in question provides an interface to).

mcpa :

an McpAccountManager instance

manager :

the name of the manager

protocol :

the name of the protocol

params :

A gchar * / GValue * hash table of account parameters.

Returns :

the newly allocated account name, which should be freed once the caller is done with it.

mcp_account_manager_get_value ()

gchar *             mcp_account_manager_get_value       (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key);

Fetch a copy of the current value of an account setting held by the McdAccountManager.

mcpa :

an McpAccountManager instance

account :

the unique name of an account

key :

the setting whose value we want to retrieve

Returns :

a gchar* which should be freed when the caller is done with it.

mcp_account_manager_list_keys ()

GStrv               mcp_account_manager_list_keys       (const McpAccountManager *mcpa,
                                                         const gchar *account);

mcp_account_manager_parameter_is_secret ()

gboolean            mcp_account_manager_parameter_is_secret
                                                        (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key);

Determine whether a given account parameter is secret. generally this is determined by MC and passed down to us, but any McpAccountStorage plugin may decide a setting is secret, in which case the return value for this call will indicate that fact.

mcpa :

an McpAccountManager instance

account :

the unique name of an account

key :

the setting whose value we want to retrieve

Returns :

a gboolean, TRUE for secret settings, FALSE otherwise

mcp_account_manager_parameter_make_secret ()

void                mcp_account_manager_parameter_make_secret
                                                        (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key);

Flag an account setting as secret for the lifetime of this McpAccountManager and its corresponding McdAccountManager

mcpa :

an McpAccountManager instance

account :

the unique name of an account

key :

the setting whose value we want to retrieve

mcp_account_manager_set_value ()

void                mcp_account_manager_set_value       (const McpAccountManager *mcpa,
                                                         const gchar *account,
                                                         const gchar *key,
                                                         const gchar *value);

See Also

McpAccountStorage