gwenhywfar 5.14.1
configmgr.h File Reference
#include <gwenhywfar/inherit.h>
#include <gwenhywfar/db.h>
#include <gwenhywfar/stringlist.h>
Include dependency graph for configmgr.h:

Go to the source code of this file.

Macros

#define GWEN_CONFIGMGR_FOLDER   "configmgr"
#define GWEN_CONFIGMGR_PLUGIN_NAME   "configmgr"

Typedefs

typedef struct GWEN_CONFIGMGR GWEN_CONFIGMGR

Functions

GWENHYWFAR_API int GWEN_ConfigMgr_DeleteGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName)
GWENHYWFAR_API GWEN_CONFIGMGRGWEN_ConfigMgr_Factory (const char *url)
GWENHYWFAR_API void GWEN_ConfigMgr_free (GWEN_CONFIGMGR *mgr)
GWENHYWFAR_API int GWEN_ConfigMgr_GetGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName, GWEN_DB_NODE **pDb)
GWENHYWFAR_API int GWEN_ConfigMgr_GetUniqueId (GWEN_CONFIGMGR *mgr, const char *groupName, char *buffer, uint32_t bufferLen)
GWENHYWFAR_API int GWEN_ConfigMgr_HasGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName)
GWENHYWFAR_API int GWEN_ConfigMgr_ListGroups (GWEN_CONFIGMGR *mgr, GWEN_STRINGLIST *sl)
GWENHYWFAR_API int GWEN_ConfigMgr_ListSubGroups (GWEN_CONFIGMGR *mgr, const char *groupName, GWEN_STRINGLIST *sl)
GWENHYWFAR_API int GWEN_ConfigMgr_LockGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName)
GWENHYWFAR_API int GWEN_ConfigMgr_MkUniqueIdFromId (GWEN_CONFIGMGR *mgr, const char *groupName, uint32_t uid, int doCheck, char *buffer, uint32_t bufferLen)
GWENHYWFAR_API int GWEN_ConfigMgr_SetGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName, GWEN_DB_NODE *db)
GWENHYWFAR_API int GWEN_ConfigMgr_UnlockGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName)

Macro Definition Documentation

◆ GWEN_CONFIGMGR_FOLDER

#define GWEN_CONFIGMGR_FOLDER   "configmgr"

Definition at line 40 of file configmgr.h.

Referenced by GWEN_ConfigMgr_ModuleInit().

◆ GWEN_CONFIGMGR_PLUGIN_NAME

#define GWEN_CONFIGMGR_PLUGIN_NAME   "configmgr"

Typedef Documentation

◆ GWEN_CONFIGMGR

Definition at line 36 of file configmgr.h.

Function Documentation

◆ GWEN_ConfigMgr_DeleteGroup()

GWENHYWFAR_API int GWEN_ConfigMgr_DeleteGroup ( GWEN_CONFIGMGR * mgr,
const char * groupName,
const char * subGroupName )

Definition at line 384 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_Factory()

GWENHYWFAR_API GWEN_CONFIGMGR * GWEN_ConfigMgr_Factory ( const char * url)

Creates a GWEN_CONFIGMGR object. The given URL is inspected for the protocol part which is used to lookup the plugin responsible. A generic file based configuration manager might have the URL "dir://home/martin/testconfig" which means that all files of the configuration manager reside below the folder "/home/martin/testconfig". Other plugins might have another URL scheme, however, the protocol part always specifies the plugin (in this case "dir").

Definition at line 483 of file configmgr.c.

References DBG_ERROR, DBG_INFO, GWEN_ConfigMgr_Plugin_Factory(), GWEN_CONFIGMGR_PLUGIN_NAME, GWEN_LOGDOMAIN, GWEN_PluginManager_FindPluginManager(), GWEN_PluginManager_GetPlugin(), GWEN_Url_free(), GWEN_Url_fromString(), GWEN_Url_GetProtocol(), and NULL.

Here is the call graph for this function:

◆ GWEN_ConfigMgr_free()

GWENHYWFAR_API void GWEN_ConfigMgr_free ( GWEN_CONFIGMGR * mgr)

Definition at line 135 of file configmgr.c.

References GWEN_FREE_OBJECT, and GWEN_INHERIT_FINI.

Referenced by GWEN_ConfigMgrDir_new().

Here is the caller graph for this function:

◆ GWEN_ConfigMgr_GetGroup()

GWENHYWFAR_API int GWEN_ConfigMgr_GetGroup ( GWEN_CONFIGMGR * mgr,
const char * groupName,
const char * subGroupName,
GWEN_DB_NODE ** pDb )

Definition at line 287 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_GetUniqueId()

GWENHYWFAR_API int GWEN_ConfigMgr_GetUniqueId ( GWEN_CONFIGMGR * mgr,
const char * groupName,
char * buffer,
uint32_t bufferLen )

Definition at line 354 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_HasGroup()

GWENHYWFAR_API int GWEN_ConfigMgr_HasGroup ( GWEN_CONFIGMGR * mgr,
const char * groupName,
const char * subGroupName )

Definition at line 315 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_ListGroups()

GWENHYWFAR_API int GWEN_ConfigMgr_ListGroups ( GWEN_CONFIGMGR * mgr,
GWEN_STRINGLIST * sl )

Definition at line 397 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_ListSubGroups()

GWENHYWFAR_API int GWEN_ConfigMgr_ListSubGroups ( GWEN_CONFIGMGR * mgr,
const char * groupName,
GWEN_STRINGLIST * sl )

Definition at line 408 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_LockGroup()

GWENHYWFAR_API int GWEN_ConfigMgr_LockGroup ( GWEN_CONFIGMGR * mgr,
const char * groupName,
const char * subGroupName )

Definition at line 328 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_MkUniqueIdFromId()

GWENHYWFAR_API int GWEN_ConfigMgr_MkUniqueIdFromId ( GWEN_CONFIGMGR * mgr,
const char * groupName,
uint32_t uid,
int doCheck,
char * buffer,
uint32_t bufferLen )

Create an id which is unique inside the given group derived from the given id.

Returns
0 if okay, error code otherwise
Parameters
mgrpointer to config mgr object
groupNamename of the group within the id is unique
doCheckif !=0 the derived unique id MUST NOT exist
bufferbuffer to receive the generated unique id
bufferLensize of the buffer pointed to by "buffer" above

Definition at line 368 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_SetGroup()

GWENHYWFAR_API int GWEN_ConfigMgr_SetGroup ( GWEN_CONFIGMGR * mgr,
const char * groupName,
const char * subGroupName,
GWEN_DB_NODE * db )

Definition at line 301 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

◆ GWEN_ConfigMgr_UnlockGroup()

GWENHYWFAR_API int GWEN_ConfigMgr_UnlockGroup ( GWEN_CONFIGMGR * mgr,
const char * groupName,
const char * subGroupName )

Definition at line 341 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.