11#include "libical_icalss_export.h"
18enum icalbdbset_subdb_type
25typedef enum icalbdbset_subdb_type icalbdbset_subdb_type;
28LIBICAL_ICALSS_EXPORT
int icalbdbset_init_dbenv(
char *db_env_dir,
29 void (*logDbFunc)(
const DB_ENV *,
30 const char *,
const char *));
32LIBICAL_ICALSS_EXPORT icalset *icalbdbset_init(icalset *set,
const char *dsn,
void *options);
34LIBICAL_ICALSS_EXPORT
int icalbdbset_cleanup(
void);
36LIBICAL_ICALSS_EXPORT
void icalbdbset_checkpoint(
void);
38LIBICAL_ICALSS_EXPORT
void icalbdbset_rmdbLog(
void);
42LIBICAL_ICALSS_EXPORT icalset *icalbdbset_new(
const char *database_filename,
43 icalbdbset_subdb_type subdb_type,
44 int dbtype, u_int32_t flag);
46LIBICAL_ICALSS_EXPORT DB *icalbdbset_bdb_open_secondary(DB *dbp,
48 const char *sub_database,
49 int (*callback)(DB *db,
55LIBICAL_ICALSS_EXPORT
char *icalbdbset_parse_data(DBT *dbt,
char *(*pfunc)(
const DBT *dbt));
57LIBICAL_ICALSS_EXPORT
void icalbdbset_free(icalset *set);
60LIBICAL_ICALSS_EXPORT
int icalbdbset_acquire_cursor(DB *dbp, DB_TXN *tid, DBC **rdbcp);
62LIBICAL_ICALSS_EXPORT
int icalbdbset_cget(DBC *dbcp, DBT *key, DBT *data,
63 u_int32_t access_method);
65LIBICAL_ICALSS_EXPORT
int icalbdbset_cput(DBC *dbcp, DBT *key, DBT *data,
66 u_int32_t access_method);
68LIBICAL_ICALSS_EXPORT
int icalbdbset_get_first(DBC *dbcp, DBT *key, DBT *data);
70LIBICAL_ICALSS_EXPORT
int icalbdbset_get_next(DBC *dbcp, DBT *key, DBT *data);
72LIBICAL_ICALSS_EXPORT
int icalbdbset_get_last(DBC *dbcp, DBT *key, DBT *data);
74LIBICAL_ICALSS_EXPORT
int icalbdbset_get_key(DBC *dbcp, DBT *key, DBT *data);
76LIBICAL_ICALSS_EXPORT
int icalbdbset_delete(DB *dbp, DBT *key);
78LIBICAL_ICALSS_EXPORT
int icalbdbset_put(DB *dbp, DBT *key, DBT *data, u_int32_t access_method);
80LIBICAL_ICALSS_EXPORT
int icalbdbset_get(DB *dbp, DB_TXN *tid, DBT *key, DBT *data,
83LIBICAL_ICALSS_EXPORT
const char *icalbdbset_path(icalset *set);
85LIBICAL_ICALSS_EXPORT
const char *icalbdbset_subdb(icalset *set);
89LIBICAL_ICALSS_EXPORT
void icalbdbset_mark(icalset *set);
91LIBICAL_ICALSS_EXPORT
icalerrorenum icalbdbset_commit(icalset *set);
93LIBICAL_ICALSS_EXPORT
icalerrorenum icalbdbset_add_component(icalset *set, icalcomponent *child);
95LIBICAL_ICALSS_EXPORT
icalerrorenum icalbdbset_remove_component(icalset *set,
96 icalcomponent *child);
98LIBICAL_ICALSS_EXPORT
int icalbdbset_count_components(icalset *set, icalcomponent_kind kind);
102LIBICAL_ICALSS_EXPORT
icalerrorenum icalbdbset_select(icalset *set, icalgauge *gauge);
104LIBICAL_ICALSS_EXPORT
void icalbdbset_clear(icalset *set);
107LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_fetch(icalset *set,
108 icalcomponent_kind kind,
const char *uid);
110LIBICAL_ICALSS_EXPORT
int icalbdbset_has_uid(icalset *set,
const char *uid);
112LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_fetch_match(icalset *set,
const icalcomponent *c);
114LIBICAL_ICALSS_EXPORT
icalerrorenum icalbdbset_modify(icalset *set, icalcomponent *old,
115 icalcomponent *newc);
118LIBICAL_ICALSS_EXPORT
icalerrorenum icalbdbset_set_cluster(icalset *set, icalcomponent *cluster);
120LIBICAL_ICALSS_EXPORT
icalerrorenum icalbdbset_free_cluster(icalset *set);
122LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_get_cluster(icalset *set);
127LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_get_current_component(icalset *set);
129LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_get_first_component(icalset *set);
131LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_get_next_component(icalset *set);
134LIBICAL_ICALSS_EXPORT
icalsetiter icalbdbset_begin_component(icalset *set,
135 icalcomponent_kind kind,
136 icalgauge *gauge,
const char *tzid);
138LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_form_a_matched_recurrence_component(
icalsetiter *
141LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbsetiter_to_next(icalset *set,
icalsetiter *i);
143LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbsetiter_to_prior(icalset *set,
icalsetiter *i);
148LIBICAL_ICALSS_EXPORT icalcomponent *icalbdbset_get_component(icalset *set);
150LIBICAL_ICALSS_EXPORT DB_ENV *icalbdbset_get_env(
void);
152LIBICAL_ICALSS_EXPORT
int icalbdbset_begin_transaction(DB_TXN *parent_id, DB_TXN **txnid);
154LIBICAL_ICALSS_EXPORT
int icalbdbset_commit_transaction(DB_TXN *txnid);
156LIBICAL_ICALSS_EXPORT DB *icalbdbset_bdb_open(
const char *path,
158 int type,
int mode, u_int32_t flag);
165 char *(*pfunc)(
const DBT *dbt);
167 int (*callback)(DB *db,
169 const DBT *dbt1,
const DBT *dbt2, DBT *dbt3);
icalerrorenum
Represents the different types of errors that can be triggered in libical.
Definition icalerror.h:64
Definition icalbdbsetimpl.h:17
Definition icalbdbset.h:160
int dbtype
Definition icalbdbset.h:162
u_int32_t flag
Definition icalbdbset.h:164
icalbdbset_subdb_type subdb
Definition icalbdbset.h:161
int mode
Definition icalbdbset.h:163