35
static enum MAPISTORE_ERROR mapistore_op_defaults_init(void)
37
return MAPISTORE_ERR_NOT_IMPLEMENTED;
41
static enum MAPISTORE_ERROR mapistore_op_defaults_create_context(struct mapistore_backend_context *mstoredb_ctx,
42
const char *login_user,
47
return MAPISTORE_ERR_NOT_IMPLEMENTED;
51
static enum MAPISTORE_ERROR mapistore_op_defaults_delete_context(void *private_data)
53
return MAPISTORE_ERR_NOT_IMPLEMENTED;
57
static enum MAPISTORE_ERROR mapistore_op_defaults_release_record(void *private_data,
61
return MAPISTORE_ERR_NOT_IMPLEMENTED;
65
static enum MAPISTORE_ERROR mapistore_op_defaults_get_path(void *private_data,
70
return MAPISTORE_ERR_NOT_IMPLEMENTED;
74
static enum MAPISTORE_ERROR mapistore_op_defaults_mkdir(void *private_data,
75
const char *parent_uri,
76
const char *folder_name,
77
const char *folder_desc,
78
enum FOLDER_TYPE folder_type,
81
return MAPISTORE_ERR_NOT_IMPLEMENTED;
85
static enum MAPISTORE_ERROR mapistore_op_defaults_rmdir(void *private_data,
86
const char *parent_uri,
87
const char *folder_uri)
89
return MAPISTORE_ERR_NOT_IMPLEMENTED;
93
static enum MAPISTORE_ERROR mapistore_op_defaults_opendir(void *private_data,
94
const char *parent_uri,
95
const char *folder_uri)
97
return MAPISTORE_ERR_NOT_IMPLEMENTED;
101
static enum MAPISTORE_ERROR mapistore_op_defaults_closedir(void *private_data,
102
const char *folder_uri)
104
return MAPISTORE_ERR_NOT_IMPLEMENTED;
108
static enum MAPISTORE_ERROR mapistore_op_defaults_readdir_count(void *private_data,
109
const char *folder_uri,
110
enum MAPISTORE_TABLE_TYPE table_type,
113
return MAPISTORE_ERR_NOT_IMPLEMENTED;
117
static enum MAPISTORE_ERROR mapistore_op_defaults_get_table_property(void *private_data,
118
const char *folder_uri,
119
enum MAPISTORE_TABLE_TYPE table_type,
121
enum MAPITAGS proptag,
124
return MAPISTORE_ERR_NOT_IMPLEMENTED;
128
static enum MAPISTORE_ERROR mapistore_op_defaults_openmessage(void *private_data,
129
const char *folder_uri,
130
const char *message_uri,
131
struct mapistore_message *msg)
133
return MAPISTORE_ERR_NOT_IMPLEMENTED;
137
static enum MAPISTORE_ERROR mapistore_op_defaults_createmessage(void *private_data,
138
const char *folder_uri,
142
return MAPISTORE_ERR_NOT_IMPLEMENTED;
146
static enum MAPISTORE_ERROR mapistore_op_defaults_savechangesmessage(void *private_data,
147
const char *message_uri,
150
return MAPISTORE_ERR_NOT_IMPLEMENTED;
154
static enum MAPISTORE_ERROR mapistore_op_defaults_submitmessage(void *private_data,
155
const char *message_uri,
158
return MAPISTORE_ERR_NOT_IMPLEMENTED;
162
static enum MAPISTORE_ERROR mapistore_op_defaults_deletemessage(void *private_data,
163
const char *message_uri,
164
enum MAPISTORE_DELETION_TYPE deletion_type)
166
return MAPISTORE_ERR_NOT_IMPLEMENTED;
170
static enum MAPISTORE_ERROR mapistore_op_defaults_get_uri_by_name(void *private_data,
171
const char *parent_uri,
172
const char *foldername,
175
return MAPISTORE_ERR_NOT_IMPLEMENTED;
179
static enum MAPISTORE_ERROR mapistore_op_defaults_getprops(void *private_data,
182
struct SPropTagArray *SPropTagArray,
185
return MAPISTORE_ERR_NOT_IMPLEMENTED;
189
static enum MAPISTORE_ERROR mapistore_op_defaults_setprops(void *private_data,
194
return MAPISTORE_ERR_NOT_IMPLEMENTED;
198
static enum MAPISTORE_ERROR mapistore_op_defaults_db_create_uri(TALLOC_CTX *mem_ctx,
200
const char *username,
201
char **mapistore_uri)
203
return MAPISTORE_ERR_NOT_IMPLEMENTED;
207
static enum MAPISTORE_ERROR mapistore_op_defaults_provision_namedprops(TALLOC_CTX *mem_ctx, char **ldif,
208
enum MAPISTORE_NAMEDPROPS_PROVISION_TYPE *ntype)
210
return MAPISTORE_ERR_NOT_IMPLEMENTED;
214
static enum MAPISTORE_ERROR mapistore_op_defaults_db_mkdir(void *private_data, enum MAPISTORE_DFLT_FOLDERS system_idx,
215
const char *mapistore_uri, const char *folder_name)
217
return MAPISTORE_ERR_NOT_IMPLEMENTED;
221
\brief Set default implementations for all the backend methods
223
The default implementations just fail (returning MAPISTORE_ERR_NOT_IMPLEMENTED), but
224
that is a lot better than forgetting to implement one and having the backend crash. You should
225
call this function before setting any of your own values.
227
\param backend the backend to set the defaults on
229
\return MAPISTORE_SUCCESS on success, otherwise a MAPISTORE_ERROR value
232
enum MAPISTORE_ERROR mapistore_backend_init_defaults(struct mapistore_backend *backend)
33
static enum mapistore_error mapistore_op_defaults_init(void)
35
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
36
return MAPISTORE_ERR_NOT_IMPLEMENTED;
39
static enum mapistore_error mapistore_op_defaults_list_contexts(const char *owner, struct tdb_wrap *indexing,
41
struct mapistore_contexts_list **contexts_listp)
43
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
44
return MAPISTORE_ERR_NOT_IMPLEMENTED;
47
static enum mapistore_error mapistore_op_defaults_create_context(TALLOC_CTX *mem_ctx,
48
struct mapistore_connection_info *conn_info,
49
struct tdb_wrap *indexing_ctx,
50
const char *uri, void **ctx)
52
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
53
return MAPISTORE_ERR_NOT_IMPLEMENTED;
56
static enum mapistore_error mapistore_op_defaults_create_root_folder(const char *username,
57
enum mapistore_context_role ctx_role,
61
char **mapistore_urip)
63
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
64
return MAPISTORE_ERR_NOT_IMPLEMENTED;
67
static enum mapistore_error mapistore_op_defaults_get_path(void *ctx_obj, TALLOC_CTX *mem_ctx,
68
uint64_t fmid, char **path)
70
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
71
return MAPISTORE_ERR_NOT_IMPLEMENTED;
74
static enum mapistore_error mapistore_op_defaults_get_root_folder(void *backend_object,
77
void **root_folder_object)
79
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
80
return MAPISTORE_ERR_NOT_IMPLEMENTED;
83
static enum mapistore_error mapistore_op_defaults_open_folder(void *folder_object,
86
void **child_folder_object)
88
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
89
return MAPISTORE_ERR_NOT_IMPLEMENTED;
92
static enum mapistore_error mapistore_op_defaults_create_folder(void *folder_object,
96
void **child_folder_object)
98
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
99
return MAPISTORE_ERR_NOT_IMPLEMENTED;
102
static enum mapistore_error mapistore_op_defaults_delete_folder(void *folder_object)
104
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
105
return MAPISTORE_ERR_NOT_IMPLEMENTED;
108
static enum mapistore_error mapistore_op_defaults_open_message(void *folder_object,
112
void **message_object)
114
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
115
return MAPISTORE_ERR_NOT_IMPLEMENTED;
118
static enum mapistore_error mapistore_op_defaults_create_message(void *folder_object,
122
void **message_object)
124
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
125
return MAPISTORE_ERR_NOT_IMPLEMENTED;
128
static enum mapistore_error mapistore_op_defaults_delete_message(void *folder_object,
132
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
133
return MAPISTORE_ERR_NOT_IMPLEMENTED;
136
static enum mapistore_error mapistore_op_defaults_move_copy_messages(void *target_folder,
139
uint64_t *source_mids,
140
uint64_t *target_mids,
141
struct Binary_r **target_change_keys,
144
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
145
return MAPISTORE_ERR_NOT_IMPLEMENTED;
148
static enum mapistore_error mapistore_op_defaults_get_deleted_fmids(void *folder_object,
150
enum mapistore_table_type table_type,
152
struct I8Array_r **fmidsp,
155
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
156
return MAPISTORE_ERR_NOT_IMPLEMENTED;
159
static enum mapistore_error mapistore_op_defaults_get_child_count(void *folder_object,
160
enum mapistore_table_type table_type,
163
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
164
return MAPISTORE_ERR_NOT_IMPLEMENTED;
167
static enum mapistore_error mapistore_op_defaults_open_table(void *folder_object,
169
enum mapistore_table_type table_type,
174
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
175
return MAPISTORE_ERR_NOT_IMPLEMENTED;
178
static enum mapistore_error mapistore_op_defaults_modify_permissions(void *folder_object,
181
struct PermissionData *permissions)
183
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
184
return MAPISTORE_ERR_NOT_IMPLEMENTED;
187
static enum mapistore_error mapistore_op_defaults_get_message_data(void *message_object,
189
struct mapistore_message **msg)
191
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
192
return MAPISTORE_ERR_NOT_IMPLEMENTED;
195
static enum mapistore_error mapistore_op_defaults_modify_recipients(void *message_object,
196
struct SPropTagArray *columns,
198
struct mapistore_message_recipient *recipients)
200
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
201
return MAPISTORE_ERR_NOT_IMPLEMENTED;
204
static enum mapistore_error mapistore_op_defaults_set_read_flag(void *message_object, uint8_t flag)
206
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
207
return MAPISTORE_ERR_NOT_IMPLEMENTED;
210
static enum mapistore_error mapistore_op_defaults_save(void *message_object)
212
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
213
return MAPISTORE_ERR_NOT_IMPLEMENTED;
216
static enum mapistore_error mapistore_op_defaults_submit(void *message_object, enum SubmitFlags flags)
218
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
219
return MAPISTORE_ERR_NOT_IMPLEMENTED;
222
static enum mapistore_error mapistore_op_defaults_open_attachment(void *message_object,
225
void **attachment_object)
227
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
228
return MAPISTORE_ERR_NOT_IMPLEMENTED;
231
static enum mapistore_error mapistore_op_defaults_create_attachment(void *message_object,
233
void **attachment_object,
236
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
237
return MAPISTORE_ERR_NOT_IMPLEMENTED;
240
static enum mapistore_error mapistore_op_defaults_get_attachment_table(void *message_object,
245
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
246
return MAPISTORE_ERR_NOT_IMPLEMENTED;
249
static enum mapistore_error mapistore_op_defaults_open_embedded_message(void *message_object,
251
void **embedded_message_object,
253
struct mapistore_message **msg)
255
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
256
return MAPISTORE_ERR_NOT_IMPLEMENTED;
259
static enum mapistore_error mapistore_op_defaults_get_available_properties(void *x_object,
261
struct SPropTagArray **propertiesp)
263
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
264
return MAPISTORE_ERR_NOT_IMPLEMENTED;
267
static enum mapistore_error mapistore_op_defaults_set_columns(void *table_object,
269
enum MAPITAGS *properties)
271
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
272
return MAPISTORE_ERR_NOT_IMPLEMENTED;
275
static enum mapistore_error mapistore_op_defaults_set_restrictions(void *table_object,
276
struct mapi_SRestriction *restrictions,
277
uint8_t *table_status)
279
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
280
return MAPISTORE_ERR_NOT_IMPLEMENTED;
283
static enum mapistore_error mapistore_op_defaults_set_sort_order(void *table_object,
284
struct SSortOrderSet *sort_order,
285
uint8_t *table_status)
287
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
288
return MAPISTORE_ERR_NOT_IMPLEMENTED;
291
static enum mapistore_error mapistore_op_defaults_get_row(void *table_object,
293
enum mapistore_query_type query_type,
295
struct mapistore_property_data **data)
297
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
298
return MAPISTORE_ERR_NOT_IMPLEMENTED;
301
static enum mapistore_error mapistore_op_defaults_get_row_count(void *table_object,
302
enum mapistore_query_type query_type,
303
uint32_t *row_countp)
305
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
306
return MAPISTORE_ERR_NOT_IMPLEMENTED;
309
static enum mapistore_error mapistore_op_defaults_handle_destructor(void *table_object,
312
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
313
return MAPISTORE_ERR_NOT_IMPLEMENTED;
316
static enum mapistore_error mapistore_op_defaults_get_properties(void *x_object,
319
enum MAPITAGS *properties,
320
struct mapistore_property_data *data)
322
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
323
return MAPISTORE_ERR_NOT_IMPLEMENTED;
326
static enum mapistore_error mapistore_op_defaults_set_properties(void *x_object,
329
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
330
return MAPISTORE_ERR_NOT_IMPLEMENTED;
333
static enum mapistore_error mapistore_op_defaults_generate_uri(TALLOC_CTX *mem_ctx,
334
const char *username,
337
const char *root_uri,
340
DEBUG(3, ("[%s:%d] MAPISTORE defaults - MAPISTORE_ERR_NOT_IMPLEMENTED\n", __FUNCTION__, __LINE__));
341
return MAPISTORE_ERR_NOT_IMPLEMENTED;
344
extern enum mapistore_error mapistore_backend_init_defaults(struct mapistore_backend *backend)
234
346
/* Sanity checks */
235
347
MAPISTORE_RETVAL_IF(!backend, MAPISTORE_ERR_INVALID_PARAMETER, NULL);
237
/* Backend information */
238
backend->name = NULL;
239
backend->description = NULL;
240
backend->uri_namespace = NULL;
242
/* Backend semantics */
243
backend->init = mapistore_op_defaults_init;
244
backend->create_context = mapistore_op_defaults_create_context;
245
backend->delete_context = mapistore_op_defaults_delete_context;
246
backend->release_record = mapistore_op_defaults_release_record;
247
backend->get_path = mapistore_op_defaults_get_path;
249
/* Folder semantics */
250
backend->op_mkdir = mapistore_op_defaults_mkdir;
251
backend->op_rmdir = mapistore_op_defaults_rmdir;
252
backend->op_opendir = mapistore_op_defaults_opendir;
253
backend->op_closedir = mapistore_op_defaults_closedir;
254
backend->op_readdir_count = mapistore_op_defaults_readdir_count;
255
backend->op_get_table_property = mapistore_op_defaults_get_table_property;
256
backend->op_get_uri_by_name = mapistore_op_defaults_get_uri_by_name;
258
/* Message semantics */
259
backend->op_openmessage = mapistore_op_defaults_openmessage;
260
backend->op_createmessage = mapistore_op_defaults_createmessage;
261
backend->op_savechangesmessage = mapistore_op_defaults_savechangesmessage;
262
backend->op_submitmessage = mapistore_op_defaults_submitmessage;
263
backend->op_deletemessage = mapistore_op_defaults_deletemessage;
265
/* Common semantics */
266
backend->op_getprops = mapistore_op_defaults_getprops;
267
backend->op_setprops = mapistore_op_defaults_setprops;
269
/* MAPIStoreDB/Store semantics */
270
backend->op_db_create_uri = mapistore_op_defaults_db_create_uri;
271
backend->op_db_provision_namedprops = mapistore_op_defaults_provision_namedprops;
272
backend->op_db_mkdir = mapistore_op_defaults_db_mkdir;
349
/* Backend operations */
350
backend->backend.name = NULL;
351
backend->backend.description = NULL;
352
backend->backend.namespace = NULL;
353
backend->backend.init = mapistore_op_defaults_init;
354
backend->backend.list_contexts = mapistore_op_defaults_list_contexts;
355
backend->backend.create_context = mapistore_op_defaults_create_context;
356
backend->backend.create_root_folder = mapistore_op_defaults_create_root_folder;
358
/* context operations */
359
backend->context.get_path = mapistore_op_defaults_get_path;
360
backend->context.get_root_folder = mapistore_op_defaults_get_root_folder;
362
/* oxcfold semantics */
363
backend->folder.open_folder = mapistore_op_defaults_open_folder;
364
backend->folder.create_folder = mapistore_op_defaults_create_folder;
365
backend->folder.delete = mapistore_op_defaults_delete_folder;
366
backend->folder.open_message = mapistore_op_defaults_open_message;
367
backend->folder.create_message = mapistore_op_defaults_create_message;
368
backend->folder.delete_message = mapistore_op_defaults_delete_message;
369
backend->folder.move_copy_messages = mapistore_op_defaults_move_copy_messages;
370
backend->folder.get_deleted_fmids = mapistore_op_defaults_get_deleted_fmids;
371
backend->folder.get_child_count = mapistore_op_defaults_get_child_count;
372
backend->folder.open_table = mapistore_op_defaults_open_table;
373
backend->folder.modify_permissions = mapistore_op_defaults_modify_permissions;
375
/* oxcmsg operations */
376
backend->message.get_message_data = mapistore_op_defaults_get_message_data;
377
backend->message.modify_recipients = mapistore_op_defaults_modify_recipients;
378
backend->message.set_read_flag = mapistore_op_defaults_set_read_flag;
379
backend->message.save = mapistore_op_defaults_save;
380
backend->message.submit = mapistore_op_defaults_submit;
381
backend->message.open_attachment = mapistore_op_defaults_open_attachment;
382
backend->message.create_attachment = mapistore_op_defaults_create_attachment;
383
backend->message.get_attachment_table = mapistore_op_defaults_get_attachment_table;
384
backend->message.open_embedded_message = mapistore_op_defaults_open_embedded_message;
386
/* oxctabl operations */
387
backend->table.get_available_properties = mapistore_op_defaults_get_available_properties;
388
backend->table.set_columns = mapistore_op_defaults_set_columns;
389
backend->table.set_restrictions = mapistore_op_defaults_set_restrictions;
390
backend->table.set_sort_order = mapistore_op_defaults_set_sort_order;
391
backend->table.get_row = mapistore_op_defaults_get_row;
392
backend->table.get_row_count = mapistore_op_defaults_get_row_count;
393
backend->table.handle_destructor = mapistore_op_defaults_handle_destructor;
395
/* oxcprpt operations */
396
backend->properties.get_available_properties = mapistore_op_defaults_get_available_properties;
397
backend->properties.get_properties = mapistore_op_defaults_get_properties;
398
backend->properties.set_properties = mapistore_op_defaults_set_properties;
400
/* manager operations */
401
backend->manager.generate_uri = mapistore_op_defaults_generate_uri;
274
403
return MAPISTORE_SUCCESS;