52 BaTime maxInactiveInterval;
117 U16 nextUniqueRoleId;
123#define JUserCont_findUser(o, uname) \
124 (JUser*)SplayTree_find(&(o)->userdb, uname)
125U16 JUserCont_role2Id(
JUserCont* o,
const char* roleName);
BA_API void JUserCont_setUserDb(JUserCont *o, JVal *usersVal, JErr *err)
Replace the user database without rollback.
BA_API void JUserCont_destructor(JUserCont *o)
Release all users and role mappings.
BA_API void JUserCont_constructor(JUserCont *o, AllocatorIntf *alloc)
Initialize a user database.
uint16_t U16
Unsigned 16-bit integer.
Definition: GenPrimT.h:91
S64 BaTime
An arithmetic type representing calendar time with epoch of 1970-01-01 00:00:00 UTC,...
Definition: GenPrimT.h:103
uint32_t U32
Unsigned 32-bit integer.
Definition: GenPrimT.h:93
U8 BaBool
Boolean stored in an unsigned byte; FALSE is zero and TRUE is one.
Definition: GenPrimT.h:118
Memory allocation and deallocation Interface class.
Definition: AllocatorIntf.h:98
The JSON error container object.
Definition: JParser.h:173
User database implementing UserIntf, loaded from a parsed JSON object.
Definition: JUserCont.h:93
~JUserCont()
Release users and role mappings.
Definition: JUserCont.h:144
JUserCont(AllocatorIntf *alloc)
Initialize an empty database without copying the allocator.
Definition: JUserCont.h:142
void setUserDb(JVal *usersVal, JErr *err)
Replace users from the JSON schema described by JUserCont.
Definition: JUserCont.h:146
JVal represents a value in a JSON tree.
Definition: JVal.h:78
Intrusive tree node.
Definition: SplayTree.h:52
Self-adjusting tree of caller-owned nodes, with unique keys.
Definition: SplayTree.h:109
User database interface used by the authentication classes.
Definition: AuthenticatedUser.h:195