21 #include "libical_icalss_export.h"
28 enum icalbdbset_subdb_type
29 { ICALBDB_CALENDARS, ICALBDB_EVENTS, ICALBDB_TODOS, ICALBDB_REMINDERS };
30 typedef enum icalbdbset_subdb_type icalbdbset_subdb_type;
33 LIBICAL_ICALSS_EXPORT
int icalbdbset_init_dbenv(
char *db_env_dir,
34 void (*logDbFunc) (
const DB_ENV *,
35 const char *,
const char *));
37 LIBICAL_ICALSS_EXPORT
icalset *icalbdbset_init(
icalset *set,
const char *dsn,
void *options);
39 LIBICAL_ICALSS_EXPORT
int icalbdbset_cleanup(
void);
41 LIBICAL_ICALSS_EXPORT
void icalbdbset_checkpoint(
void);
43 LIBICAL_ICALSS_EXPORT
void icalbdbset_rmdbLog(
void);
47 LIBICAL_ICALSS_EXPORT
icalset *icalbdbset_new(
const char *database_filename,
48 icalbdbset_subdb_type subdb_type,
49 int dbtype, u_int32_t flag);
51 LIBICAL_ICALSS_EXPORT DB *icalbdbset_bdb_open_secondary(DB *dbp,
54 int (*callback) (DB *db,
57 DBT *dbt3),
int type);
59 LIBICAL_ICALSS_EXPORT
char *icalbdbset_parse_data(DBT *dbt,
char *(*pfunc) (
const DBT *dbt));
61 LIBICAL_ICALSS_EXPORT
void icalbdbset_free(
icalset *set);
64 LIBICAL_ICALSS_EXPORT
int icalbdbset_acquire_cursor(DB *dbp, DB_TXN *tid, DBC ** rdbcp);
66 LIBICAL_ICALSS_EXPORT
int icalbdbset_cget(DBC *dbcp, DBT *key, DBT *data,
67 u_int32_t access_method);
69 LIBICAL_ICALSS_EXPORT
int icalbdbset_cput(DBC *dbcp, DBT *key, DBT *data,
70 u_int32_t access_method);
72 LIBICAL_ICALSS_EXPORT
int icalbdbset_get_first(DBC *dbcp, DBT *key, DBT *data);
74 LIBICAL_ICALSS_EXPORT
int icalbdbset_get_next(DBC *dbcp, DBT *key, DBT *data);
76 LIBICAL_ICALSS_EXPORT
int icalbdbset_get_last(DBC *dbcp, DBT *key, DBT *data);
78 LIBICAL_ICALSS_EXPORT
int icalbdbset_get_key(DBC *dbcp, DBT *key, DBT *data);
80 LIBICAL_ICALSS_EXPORT
int icalbdbset_delete(DB *dbp, DBT *key);
82 LIBICAL_ICALSS_EXPORT
int icalbdbset_put(DB *dbp, DBT *key, DBT *data, u_int32_t access_method);
84 LIBICAL_ICALSS_EXPORT
int icalbdbset_get(DB *dbp, DB_TXN *tid, DBT *key, DBT *data,
87 LIBICAL_ICALSS_EXPORT
const char *icalbdbset_path(
icalset *set);
89 LIBICAL_ICALSS_EXPORT
const char *icalbdbset_subdb(
icalset *set);
93 LIBICAL_ICALSS_EXPORT
void icalbdbset_mark(
icalset *set);
102 LIBICAL_ICALSS_EXPORT
int icalbdbset_count_components(
icalset *set, icalcomponent_kind kind);
108 LIBICAL_ICALSS_EXPORT
void icalbdbset_clear(
icalset *store);
112 icalcomponent_kind kind,
const char *uid);
114 LIBICAL_ICALSS_EXPORT
int icalbdbset_has_uid(
icalset *set,
const char *uid);
139 icalcomponent_kind kind,
154 LIBICAL_ICALSS_EXPORT DB_ENV *icalbdbset_get_env(
void);
156 LIBICAL_ICALSS_EXPORT
int icalbdbset_begin_transaction(DB_TXN *parent_id, DB_TXN ** txnid);
158 LIBICAL_ICALSS_EXPORT
int icalbdbset_commit_transaction(DB_TXN *txnid);
160 LIBICAL_ICALSS_EXPORT DB *icalbdbset_bdb_open(
const char *path,
162 int type,
int mode, u_int32_t flag);
170 char *(*pfunc) (
const DBT *dbt);
172 int (*callback) (DB *db,
174 const DBT *dbt1,
const DBT *dbt2, DBT *dbt3);
int mode
Definition: icalbdbset.h:168
Definition: icalgaugeimpl.h:54
Definition: icalbdbset.h:164
icalerrorenum
Represents the different types of errors that can be triggered in libical.
Definition: icalerror.h:75
int dbtype
Definition: icalbdbset.h:167
Definition: icalcomponent.c:35
icalbdbset_subdb_type subdb
Definition: icalbdbset.h:166
Definition: icalbdbsetimpl.h:27
u_int32_t flag
Definition: icalbdbset.h:169