1 /* Copyright (c) 2006, Nokia Corporation
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * * Neither the name of the Nokia Corporation nor the names of its
14 * contributors may be used to endorse or promote products derived from
15 * this software without specific prior written permission.
17 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
18 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
21 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
25 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
26 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 #ifndef __MODEST_ACCOUNT_MGR_HELPERS_H__
32 #define __MODEST_ACCOUNT_MGR_HELPERS_H__
34 #include <modest-account-mgr.h>
44 } ModestServerAccountData;
52 ModestServerAccountData *transport_account;
53 ModestServerAccountData *store_account;
57 * modest_account_mgr_get_account_data:
58 * @self: a ModestAccountMgr instance
59 * @name: the name of the account
61 * get information about an account
63 * Returns: a ModestAccountData structure with information about the account.
64 * the data should not be changed, and be freed with modest_account_mgr_free_account_data
65 * The function does a sanity check, an if it's not returning NULL,
66 * it is a valid account
68 ModestAccountData *modest_account_mgr_get_account_data (ModestAccountMgr *self,
73 * modest_account_mgr_free_account_data:
74 * @self: a ModestAccountMgr instance
75 * @data: a ModestAccountData instance
77 * free the account data structure
79 void modest_account_mgr_free_account_data (ModestAccountMgr *self,
80 ModestAccountData *data);
84 * modest_account_mgr_server_account_names:
85 * @self: a ModestAccountMgr instance
86 * @account_name: get only server accounts for @account_name, or NULL for any
87 * @type: get only server accounts from protocol type @type, or MODEST_PROTO_TYPE_ANY
88 * @proto: get only server account with protocol @proto, or NULL for any
89 * @only_enabled: get only enabled server accounts if TRUE
91 * list all the server account names
93 * Returns: a newly allocated list of server account names, or NULL in case of
94 * error or if there are no server accounts. The caller must free the returned GSList
96 GSList* modest_account_mgr_search_server_accounts (ModestAccountMgr *self,
97 const gchar* account_name,
98 ModestProtocolType type,
99 ModestProtocol proto);
102 * modest_account_mgr_account_set_enabled
103 * @self: a ModestAccountMgr instance
104 * @name: the account name
105 * @enabled: if TRUE, the account will be enabled, if FALSE, it will be disabled
107 * enable/disabled an account
109 * Returns: TRUE if it worked, FALSE otherwise
111 gboolean modest_account_mgr_account_set_enabled (ModestAccountMgr *self, const gchar* name,
116 * modest_account_mgr_account_get_enabled:
117 * @self: a ModestAccountMgr instance
118 * @name: the account name to check
120 * check whether a certain account is enabled
122 * Returns: TRUE if it is enabled, FALSE otherwise
124 gboolean modest_account_mgr_account_get_enabled (ModestAccountMgr *self, const gchar* name);
129 #endif /* __MODEST_ACCOUNT_MGR_H__ */