mail-index-dummy-view.c revision 2ddd140bcecd9f8b7f2686b419cdfaa5d5d3a9e8
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen/* Copyright (C) 2004 Timo Sirainen */
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen#include "lib.h"
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen#include "mail-index-private.h"
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen#include "mail-index-view-private.h"
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainenstatic void _dummy_view_close(struct mail_index_view *view __attr_unused__)
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen{
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen i_assert(view->refcount == 0);
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen i_free(view);
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen}
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainenstatic uint32_t
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen_dummy_view_get_message_count(struct mail_index_view *view __attr_unused__)
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen{
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen return (uint32_t)-3;
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen}
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainenstatic struct mail_index_view_methods dummy_view_methods = {
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen _dummy_view_close,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen _dummy_view_get_message_count,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen NULL,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen NULL,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen NULL,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen NULL,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen NULL,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen NULL,
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen NULL
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen};
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen
2ddd140bcecd9f8b7f2686b419cdfaa5d5d3a9e8Timo Sirainenstruct mail_index_view *mail_index_dummy_view_open(struct mail_index *index)
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen{
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen struct mail_index_view *view;
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen view = i_new(struct mail_index_view, 1);
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen view->refcount = 1;
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen view->methods = dummy_view_methods;
2ddd140bcecd9f8b7f2686b419cdfaa5d5d3a9e8Timo Sirainen view->index = index;
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen return view;
e8acc691a14a6d0884c5ca9aa4d8507f1e082040Timo Sirainen}