index-storage.h revision 1554bed8d2b4e4286c10f7d6bcf716b246bd5baf
#ifndef INDEX_STORAGE_H
#define INDEX_STORAGE_H
#include "file-dotlock.h"
#include "mail-storage-private.h"
#include "mail-index-private.h"
#define MAILBOX_FULL_SYNC_INTERVAL 5
enum mailbox_lock_notify_type {
/* Mailbox is locked, will abort in secs_left */
/* Mailbox lock looks stale, will override in secs_left */
};
struct index_transaction_context {
struct mail_index_transaction_vfuncs super;
int mail_ref_count;
struct mail_cache_view *cache_view;
struct mail_cache_transaction_ctx *cache_trans;
};
struct index_vsize_header {
};
struct index_mailbox_context {
union mailbox_module_context module_ctx;
struct mail_index_transaction_commit_result *result_r);
struct index_notify_file *notify_files;
struct index_notify_io *notify_ios;
struct mail_cache_field *cache_fields;
};
#define INDEX_STORAGE_CONTEXT(obj) \
unsigned int secs_left);
enum mailbox_flags flags,
const char *index_prefix);
enum mailbox_feature feature);
const struct mailbox_update *update);
const struct mailbox_update *update);
bool rename_children);
struct mail_keywords *
const char **error_r);
struct mail_index_view *view,
enum mailbox_sync_flags flags);
struct mailbox_sync_context *
bool failed);
struct mailbox_sync_rec *sync_rec_r);
struct mailbox_sync_status *status_r);
enum mailbox_status_items items,
struct mailbox_status *status_r);
struct mailbox_header_lookup_ctx *
struct mail_search_context *
struct mail_search_args *args,
const enum mail_sort_type *sort_program);
struct mailbox_transaction_context *
enum mailbox_transaction_flags flags);
enum mailbox_transaction_flags flags);
int index_transaction_commit(struct mailbox_transaction_context *t,
struct mail_transaction_commit_changes *changes_r);
void index_transaction_rollback(struct mailbox_transaction_context *t);
#endif