annotate src/lib-index/mail-index-dummy-view.c @ 3140:9810fafd04ff HEAD

Keep index pointer in dummy views.
author Timo Sirainen <tss@iki.fi>
date Sat, 05 Feb 2005 20:05:24 +0200
parents 7c7299d1acfe
children 85fcdb478608
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3114
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1 /* Copyright (C) 2004 Timo Sirainen */
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
3 #include "lib.h"
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
4 #include "mail-index-private.h"
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
5 #include "mail-index-view-private.h"
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
6
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7 static void _dummy_view_close(struct mail_index_view *view __attr_unused__)
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
8 {
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
9 i_assert(view->refcount == 0);
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
10
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
11 i_free(view);
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
12 }
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
13
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
14 static uint32_t
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
15 _dummy_view_get_message_count(struct mail_index_view *view __attr_unused__)
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
16 {
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
17 return (uint32_t)-3;
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
18 }
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
19
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
20 static struct mail_index_view_methods dummy_view_methods = {
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
21 _dummy_view_close,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
22 _dummy_view_get_message_count,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
23 NULL,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
24 NULL,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
25 NULL,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
26 NULL,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
27 NULL,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
28 NULL,
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
29 NULL
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
30 };
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
31
3140
9810fafd04ff Keep index pointer in dummy views.
Timo Sirainen <tss@iki.fi>
parents: 3114
diff changeset
32 struct mail_index_view *mail_index_dummy_view_open(struct mail_index *index)
3114
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
33 {
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
34 struct mail_index_view *view;
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
35
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
36 view = i_new(struct mail_index_view, 1);
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
37 view->refcount = 1;
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
38 view->methods = dummy_view_methods;
3140
9810fafd04ff Keep index pointer in dummy views.
Timo Sirainen <tss@iki.fi>
parents: 3114
diff changeset
39 view->index = index;
3114
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
40 return view;
7c7299d1acfe Instead of using separate transaction sorting code for syncing, just put the
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
41 }