Adaptive Framework
0.9.0
|
Adaptive Framework LMDB Adaptor Internal Header. More...
#include "afw_minimal.h"
#include "afw_lmdb.h"
#include "afw_uuid.h"
#include "generated/afw_lmdb_generated.h"
#include <lmdb.h>
Go to the source code of this file.
Data Structures | |
struct | afw_lmdb_env_s |
struct | afw_lmdb_limits_s |
struct | afw_lmdb_adaptor_s |
struct | afw_lmdb_journal_s |
struct | afw_lmdb_key_value_s |
struct | afw_lmdb_transaction_s |
struct | afw_lmdb_txn_t |
struct | afw_lmdb_adaptor_session_s |
struct | afw_lmdb_adaptor_impl_index_s |
struct | impl_afw_adaptor_impl_index_cursor_self_s |
struct | afw_lmdb_dbi_t |
Macros | |
#define | AFW_LMDB_BEGIN_TRANSACTION(adaptor, session, flags, exclusive, xctx) |
Begin an LMDB transaction. More... | |
#define | AFW_LMDB_GET_TRANSACTION() (this_session && this_session->currTxn) ? this_session->currTxn : this_txn |
#define | AFW_LMDB_COMMIT_TRANSACTION() |
Commit a transaction. More... | |
#define | AFW_LMDB_ABORT_TRANSACTION() |
Abort a transaction. More... | |
#define | AFW_LMDB_END_TRANSACTION() |
End an LMDB transaction. More... | |
Typedefs | |
typedef struct afw_lmdb_metadata_s | afw_lmdb_metadata_t |
typedef struct afw_lmdb_env_s | afw_lmdb_env_t |
typedef struct afw_lmdb_limits_s | afw_lmdb_limits_t |
typedef struct afw_lmdb_adaptor_s | afw_lmdb_adaptor_t |
typedef struct afw_lmdb_journal_s | afw_lmdb_journal_t |
typedef struct afw_lmdb_key_value_s | afw_lmdb_key_value_t |
typedef struct afw_lmdb_transaction_s | afw_lmdb_transaction_t |
typedef struct afw_lmdb_adaptor_session_s | afw_lmdb_adaptor_session_t |
typedef struct afw_lmdb_adaptor_impl_index_s | afw_lmdb_adaptor_impl_index_t |
typedef struct impl_afw_adaptor_impl_index_cursor_self_s | impl_afw_adaptor_impl_index_cursor_self_t |
Functions | |
AFW_LMDB_DECLARE_INTERNAL_CONST_DATA (afw_adaptor_factory_t) afw_lmdb_adaptor_factory | |
afw_lmdb_dbi_t * | afw_lmdb_internal_dbi_handle (MDB_env *env, MDB_dbi dbi, const afw_pool_t *pool, afw_xctx_t *xctx) |
const afw_adaptor_t * | afw_lmdb_adaptor_create_cede_p (const afw_object_t *properties, const afw_pool_t *p, afw_xctx_t *xctx) |
Internal create an LMDB adaptor. More... | |
afw_lmdb_adaptor_session_t * | afw_lmdb_adaptor_session_create (afw_lmdb_adaptor_t *adaptor, afw_xctx_t *xctx) |
Internal create a LMDB adaptor session. More... | |
afw_lmdb_journal_t * | afw_lmdb_journal_create (afw_lmdb_adaptor_session_t *session, afw_xctx_t *xctx) |
Internal create a LMDB adaptor journal. More... | |
afw_lmdb_key_value_t * | afw_lmdb_key_value_create (afw_lmdb_adaptor_session_t *session, afw_xctx_t *xctx) |
Internal create a LMDB adaptor key/value. More... | |
afw_lmdb_transaction_t * | afw_lmdb_transaction_create (afw_lmdb_adaptor_session_t *session, afw_xctx_t *xctx) |
Internal create a LMDB adaptor transaction. More... | |
afw_rc_t | afw_lmdb_internal_cleanup_free_result (void *data) |
const afw_utf8_t * | afw_lmdb_internal_get_object_id (const afw_lmdb_adaptor_session_t *self, afw_xctx_t *xctx) |
afw_rc_t | afw_lmdb_internal_close_database (void *val) |
afw_rc_t | afw_lmdb_internal_close_cursor (void *val) |
void | afw_lmdb_internal_close_transaction (void *data, void *data2, const afw_pool_t *p, afw_xctx_t *xctx) |
MDB_dbi | afw_lmdb_internal_open_database (const afw_lmdb_adaptor_t *adaptor, MDB_txn *txn, const afw_utf8_t *database, unsigned int flags, const afw_pool_t *p, afw_xctx_t *xctx) |
MDB_cursor * | afw_lmdb_internal_open_cursor (const afw_lmdb_adaptor_session_t *session, MDB_dbi dbi, afw_xctx_t *xctx) |
afw_lmdb_txn_t * | afw_lmdb_internal_open_transaction (const afw_lmdb_adaptor_session_t *session, const afw_lmdb_adaptor_t *adaptor, unsigned int flags, afw_boolean_t exclusive, afw_xctx_t *xctx) |
int | afw_lmdb_internal_commit_transaction (const afw_lmdb_adaptor_session_t *session, const afw_lmdb_adaptor_t *adaptor, afw_xctx_t *xctx) |
void | afw_lmdb_internal_abort_transaction (const afw_lmdb_adaptor_session_t *session, const afw_lmdb_adaptor_t *adaptor, afw_xctx_t *xctx) |
int | afw_lmdb_internal_index_object (const afw_lmdb_adaptor_session_t *session, const afw_lmdb_adaptor_t *adaptor, const afw_utf8_t *object_type_id, const afw_object_t *object, const afw_uuid_t *uuid, afw_xctx_t *xctx) |
int | afw_lmdb_internal_index_property (const afw_lmdb_adaptor_t *adaptor, MDB_txn *txn, const afw_utf8_t *object_type_id, const afw_utf8_t *property, const afw_utf8_t *value, const afw_uuid_t *uuid, afw_xctx_t *xctx) |
int | afw_lmdb_internal_delete_index (const afw_lmdb_adaptor_session_t *session, const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, const afw_utf8_t *property, const afw_value_t *value, afw_xctx_t *xctx) |
afw_boolean_t | afw_lmdb_internal_is_property_indexed (const afw_lmdb_adaptor_t *adaptor, const afw_utf8_t *object_type_id, const afw_utf8_t *property_name, afw_xctx_t *xctx) |
const afw_object_t * | afw_lmdb_internal_create_object_from_entry (const afw_lmdb_adaptor_session_t *self, const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, MDB_dbi dbi, afw_xctx_t *xctx) |
const afw_value_t * | afw_lmdb_internal_create_value_from_entry (const afw_lmdb_adaptor_session_t *self, const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, MDB_dbi dbi, afw_xctx_t *xctx) |
void | afw_lmdb_internal_create_entry_from_object (const afw_lmdb_adaptor_session_t *self, const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, const afw_object_t *object, MDB_dbi dbi, afw_xctx_t *xctx) |
void | afw_lmdb_internal_replace_entry_from_object (const afw_lmdb_adaptor_session_t *self, const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, const afw_object_t *object, MDB_dbi dbi, afw_xctx_t *xctx) |
afw_adaptor_impl_index_cursor_t * | afw_lmdb_internal_cursor_create (const afw_lmdb_adaptor_session_t *self, const afw_utf8_t *database, const afw_utf8_t *object_type_id, const afw_utf8_t *value, const afw_query_criteria_filter_op_id_t operator, afw_boolean_t unique, afw_xctx_t *xctx) |
const afw_object_t * | afw_lmdb_internal_get_config (afw_lmdb_adaptor_t *self, MDB_txn *txn, const afw_pool_t *p, afw_xctx_t *xctx) |
void | afw_lmdb_internal_save_config (afw_lmdb_adaptor_t *self, const afw_object_t *config, MDB_txn *txn, afw_xctx_t *xctx) |
void | afw_lmdb_internal_set_key (afw_memory_t *key, const afw_utf8_t *object_type_id, const afw_uuid_t *uuid, const afw_pool_t *p, afw_xctx_t *xctx) |
void | afw_lmdb_internal_get_key (afw_memory_t *key, afw_utf8_t *object_type_id, afw_uuid_t *uuid) |
afw_rc_t | afw_lmdb_internal_delete_entry (MDB_txn *txn, MDB_dbi dbi, const afw_memory_t *raw_key, const afw_memory_t *raw_value, afw_xctx_t *xctx) |
int | afw_lmdb_internal_reader_check (const afw_adaptor_t *instance, int *deadReaders, afw_xctx_t *xctx) |
int | afw_lmdb_internal_reader_list (const afw_adaptor_t *instance, const afw_utf8_t **list, const afw_pool_t *pool, afw_xctx_t *xctx) |
Adaptive Framework LMDB Adaptor Internal Header.
Definition in file afw_lmdb_internal.h.
#define AFW_LMDB_ABORT_TRANSACTION | ( | ) |
Abort a transaction.
Definition at line 420 of file afw_lmdb_internal.h.
#define AFW_LMDB_BEGIN_TRANSACTION | ( | adaptor, | |
session, | |||
flags, | |||
exclusive, | |||
xctx | |||
) |
Begin an LMDB transaction.
All LMDB operations must be wrapped inside a LMDB transaction, even when the transaction interface is not requested explicitly by the user.
Definition at line 363 of file afw_lmdb_internal.h.
#define AFW_LMDB_COMMIT_TRANSACTION | ( | ) |
Commit a transaction.
Definition at line 405 of file afw_lmdb_internal.h.
#define AFW_LMDB_END_TRANSACTION | ( | ) |
End an LMDB transaction.
Definition at line 435 of file afw_lmdb_internal.h.
const afw_adaptor_t* afw_lmdb_adaptor_create_cede_p | ( | const afw_object_t * | properties, |
const afw_pool_t * | p, | ||
afw_xctx_t * | xctx | ||
) |
Internal create an LMDB adaptor.
properties | Parameters. |
p | to use for adaptor resources. |
xctx | of caller. |
Definition at line 214 of file afw_lmdb_adaptor.c.
afw_lmdb_adaptor_session_t* afw_lmdb_adaptor_session_create | ( | afw_lmdb_adaptor_t * | adaptor, |
afw_xctx_t * | xctx | ||
) |
Internal create a LMDB adaptor session.
adaptor | Internal instance of adaptor. |
xctx | of caller. |
Definition at line 40 of file afw_lmdb_adaptor_session.c.
afw_lmdb_journal_t* afw_lmdb_journal_create | ( | afw_lmdb_adaptor_session_t * | session, |
afw_xctx_t * | xctx | ||
) |
Internal create a LMDB adaptor journal.
session | Internal instance of adaptor session. |
xctx | of caller. |
Definition at line 27 of file afw_lmdb_journal.c.
afw_lmdb_key_value_t* afw_lmdb_key_value_create | ( | afw_lmdb_adaptor_session_t * | session, |
afw_xctx_t * | xctx | ||
) |
Internal create a LMDB adaptor key/value.
session | Internal instance of adaptor session. |
xctx | of caller. |
Definition at line 617 of file afw_lmdb_internal.c.
afw_lmdb_transaction_t* afw_lmdb_transaction_create | ( | afw_lmdb_adaptor_session_t * | session, |
afw_xctx_t * | xctx | ||
) |
Internal create a LMDB adaptor transaction.
session | Internal instance of adaptor session. |
xctx | of caller. |
Definition at line 1257 of file afw_lmdb_internal.c.