#include <tny-folder.h>
#include <modest-account-mgr.h>
#include <modest-local-folder-info.h>
+#include <tny-session-camel.h>
G_BEGIN_DECLS
* @account_mgr: a valid account mgr instance
* @account_name: the account name for which to create a corresponding tny account
* @type: the type of account to create (TNY_ACCOUNT_TYPE_STORE or TNY_ACCOUNT_TYPE_TRANSPORT)
+ * @session: a tny camel session
+ * @get_pass_func: the get-password function
+ * @forget_pass_func: the forget-password function
*
* get a tnyaccount corresponding to the server_accounts (store or transport) for this account.
* NOTE: this function does not set the camel session or the get/forget password functions
*
* Returns: a new TnyAccount or NULL in case of error.
*/
-TnyAccount* modest_tny_account_new_from_account (ModestAccountMgr *account_mgr,
- const gchar *account_name, TnyAccountType type);
-
+TnyAccount*
+modest_tny_account_new_from_account (ModestAccountMgr *account_mgr, const gchar *account_name,
+ TnyAccountType type,
+ TnySessionCamel *session,
+ TnyGetPassFunc get_pass_func,
+ TnyForgetPassFunc forget_pass_func);
+/**
+ * modest_tny_account_new_for_local_folders:
+ * @account_mgr: a valid account mgr instance
+ * @session: a tny camel session
+ *
+ * get the local folders (pseudo) account; you should only need one such account.
+ *
+ * Returns: a new local folders TnyAccount or NULL in case of error.
+ */
+TnyAccount* modest_tny_account_new_for_local_folders (ModestAccountMgr *account_mgr,
+ TnySessionCamel *session);
/**
+ * modest_tny_account_new_for_per_account_local_outbox_folder:
+ * @account_mgr: a valid account mgr instance
+ * @account: a valid account instance
+ * @session: a tny camel session
+ *
+ * get the per-account local outbox folder (pseudo) account.
+ *
+ * Returns: a new per-account local outbox folder TnyAccount or NULL in case of error.
+ */
+TnyAccount* modest_tny_account_new_for_per_account_local_outbox_folder (
+ ModestAccountMgr *account_mgr, TnyAccount *account,
+ TnySessionCamel *session);
+
+/**
* modest_tny_account_get_special_folder:
* @self: a TnyAccount
* @special_type: the special folder to get
TnyFolder* modest_tny_account_get_special_folder (TnyAccount *self,
TnyFolderType special_type);
+
+/**
+ * modest_tny_folder_store_get_folder_count:
+ * @self: a #TnyFolderStore
+ *
+ * gets the number of folders of the account
+ *
+ * Returns: the number of folder, or -1 in case of error
+ **/
+gint modest_tny_folder_store_get_folder_count (TnyFolderStore *self);
+
+/**
+ * modest_tny_folder_store_get_message_count:
+ * @self:
+ *
+ * gets the number of messages in the account
+ *
+ * Returns: the number of messages, or -1 in case of error
+ **/
+gint modest_tny_folder_store_get_message_count (TnyFolderStore *self);
+
+/**
+ * modest_tny_folder_store_get_local_size:
+ * @self:
+ *
+ * gets the total size occupied by the account in the local storage
+ * device
+ *
+ * Returns: the total size in bytes, or -1 in case of error
+ **/
+gint modest_tny_folder_store_get_local_size (TnyFolderStore *self);
+
+/** modest_tny_account_get_parent_modest_account_name_for_server_account:
+ * Get the name of the parent modest account of which the server account is a part.
+ */
+const gchar* modest_tny_account_get_parent_modest_account_name_for_server_account (TnyAccount *self);
+
+/** modest_tny_account_set_parent_modest_account_name_for_server_account:
+ * Set the name of the parent modest account of which the server account is a part,
+ * so it can be retrieved later with
+ * modest_tny_account_get_parent_modest_account_name_for_server_account().
+ */
+void modest_tny_account_set_parent_modest_account_name_for_server_account (TnyAccount *self, const gchar* parent_modest_acount_name);
+
G_END_DECLS
#endif /* __MODEST_TNY_ACCOUNT_H__*/