gwenhywfar  4.6.0beta
Macros | Functions
configmgr.c File Reference
#include "configmgr_p.h"
#include <gwenhywfar/gwenhywfar.h>
#include <gwenhywfar/misc.h>
#include <gwenhywfar/url.h>
#include <gwenhywfar/debug.h>
#include <stdlib.h>
#include <assert.h>
#include <string.h>
#include <errno.h>
#include <ctype.h>

Go to the source code of this file.

Macros

#define DISABLE_DEBUGLOG

Functions

int GWEN_ConfigMgr_DeleteGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName)
GWEN_CONFIGMGRGWEN_ConfigMgr_Factory (const char *url)
void GWEN_ConfigMgr_free (GWEN_CONFIGMGR *mgr)
int GWEN_ConfigMgr_GetGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName, GWEN_DB_NODE **pDb)
int GWEN_ConfigMgr_GetUniqueId (GWEN_CONFIGMGR *mgr, const char *groupName, char *buffer, uint32_t bufferLen)
int GWEN_ConfigMgr_ListGroups (GWEN_CONFIGMGR *mgr, GWEN_STRINGLIST *sl)
int GWEN_ConfigMgr_ListSubGroups (GWEN_CONFIGMGR *mgr, const char *groupName, GWEN_STRINGLIST *sl)
int GWEN_ConfigMgr_LockGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName)
int GWEN_ConfigMgr_ModuleFini (void)
int GWEN_ConfigMgr_ModuleInit (void)
GWEN_CONFIGMGRGWEN_ConfigMgr_new (const char *url)
GWEN_CONFIGMGRGWEN_ConfigMgr_Plugin_Factory (GWEN_PLUGIN *pl, const char *url)
void GWENHYWFAR_CB GWEN_ConfigMgr_Plugin_FreeData (GWEN_UNUSED void *bp, void *p)
GWEN_PLUGINGWEN_ConfigMgr_Plugin_new (GWEN_PLUGIN_MANAGER *pm, const char *name, const char *fileName)
void GWEN_ConfigMgr_Plugin_SetFactoryFn (GWEN_PLUGIN *pl, GWEN_CONFIGMGR_PLUGIN_FACTORYFN f)
GWEN_CONFIGMGR_DELETEGROUP_FN GWEN_ConfigMgr_SetDeleteGroupFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_DELETEGROUP_FN f)
GWEN_CONFIGMGR_GETGROUP_FN GWEN_ConfigMgr_SetGetGroupFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_GETGROUP_FN f)
GWEN_CONFIGMGR_GETUNIQUEID_FN GWEN_ConfigMgr_SetGetUniqueIdFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_GETUNIQUEID_FN f)
int GWEN_ConfigMgr_SetGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName, GWEN_DB_NODE *db)
GWEN_CONFIGMGR_LISTGROUPS_FN GWEN_ConfigMgr_SetListGroupsFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_LISTGROUPS_FN f)
GWEN_CONFIGMGR_LISTSUBGROUPS_FN GWEN_ConfigMgr_SetListSubGroupsFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_LISTSUBGROUPS_FN f)
GWEN_CONFIGMGR_LOCKGROUP_FN GWEN_ConfigMgr_SetLockGroupFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_LOCKGROUP_FN f)
GWEN_CONFIGMGR_SETGROUP_FN GWEN_ConfigMgr_SetSetGroupFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_SETGROUP_FN f)
GWEN_CONFIGMGR_UNLOCKGROUP_FN GWEN_ConfigMgr_SetUnlockGroupFn (GWEN_CONFIGMGR *mgr, GWEN_CONFIGMGR_UNLOCKGROUP_FN f)
int GWEN_ConfigMgr_UnlockGroup (GWEN_CONFIGMGR *mgr, const char *groupName, const char *subGroupName)

Macro Definition Documentation

#define DISABLE_DEBUGLOG

Definition at line 30 of file configmgr.c.

Function Documentation

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

Definition at line 309 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

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 401 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.

void GWEN_ConfigMgr_free ( GWEN_CONFIGMGR mgr)

Definition at line 132 of file configmgr.c.

References GWEN_FREE_OBJECT, and GWEN_INHERIT_FINI.

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

Definition at line 246 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

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

Definition at line 296 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

int GWEN_ConfigMgr_ListGroups ( GWEN_CONFIGMGR mgr,
GWEN_STRINGLIST sl 
)

Definition at line 321 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

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

Definition at line 331 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

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

Definition at line 272 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

int GWEN_ConfigMgr_ModuleFini ( void  )
int GWEN_ConfigMgr_ModuleInit ( void  )
GWEN_CONFIGMGR* GWEN_ConfigMgr_new ( const char *  url)

Definition at line 118 of file configmgr.c.

References GWEN_INHERIT_INIT, and GWEN_NEW_OBJECT.

GWEN_CONFIGMGR* GWEN_ConfigMgr_Plugin_Factory ( GWEN_PLUGIN pl,
const char *  url 
)

Definition at line 387 of file configmgr.c.

References GWEN_INHERIT_GETDATA.

Referenced by GWEN_ConfigMgr_Factory().

void GWENHYWFAR_CB GWEN_ConfigMgr_Plugin_FreeData ( GWEN_UNUSED void *  bp,
void *  p 
)

Definition at line 365 of file configmgr.c.

References GWEN_FREE_OBJECT.

Referenced by GWEN_ConfigMgr_Plugin_new().

GWEN_PLUGIN* GWEN_ConfigMgr_Plugin_new ( GWEN_PLUGIN_MANAGER pm,
const char *  name,
const char *  fileName 
)
void GWEN_ConfigMgr_Plugin_SetFactoryFn ( GWEN_PLUGIN pl,
GWEN_CONFIGMGR_PLUGIN_FACTORYFN  f 
)

Definition at line 374 of file configmgr.c.

References GWEN_INHERIT_GETDATA.

GWEN_CONFIGMGR_DELETEGROUP_FN GWEN_ConfigMgr_SetDeleteGroupFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_DELETEGROUP_FN  f 
)

Definition at line 207 of file configmgr.c.

GWEN_CONFIGMGR_GETGROUP_FN GWEN_ConfigMgr_SetGetGroupFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_GETGROUP_FN  f 
)

Definition at line 142 of file configmgr.c.

GWEN_CONFIGMGR_GETUNIQUEID_FN GWEN_ConfigMgr_SetGetUniqueIdFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_GETUNIQUEID_FN  f 
)

Definition at line 194 of file configmgr.c.

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

Definition at line 259 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.

GWEN_CONFIGMGR_LISTGROUPS_FN GWEN_ConfigMgr_SetListGroupsFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_LISTGROUPS_FN  f 
)

Definition at line 220 of file configmgr.c.

GWEN_CONFIGMGR_LISTSUBGROUPS_FN GWEN_ConfigMgr_SetListSubGroupsFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_LISTSUBGROUPS_FN  f 
)

Definition at line 233 of file configmgr.c.

GWEN_CONFIGMGR_LOCKGROUP_FN GWEN_ConfigMgr_SetLockGroupFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_LOCKGROUP_FN  f 
)

Definition at line 168 of file configmgr.c.

GWEN_CONFIGMGR_SETGROUP_FN GWEN_ConfigMgr_SetSetGroupFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_SETGROUP_FN  f 
)

Definition at line 155 of file configmgr.c.

GWEN_CONFIGMGR_UNLOCKGROUP_FN GWEN_ConfigMgr_SetUnlockGroupFn ( GWEN_CONFIGMGR mgr,
GWEN_CONFIGMGR_UNLOCKGROUP_FN  f 
)

Definition at line 181 of file configmgr.c.

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

Definition at line 284 of file configmgr.c.

References GWEN_ERROR_NOT_IMPLEMENTED.