More work on mqtt tool.

This commit is contained in:
Martin Preuss
2023-10-04 16:02:02 +02:00
parent 4730943931
commit bfed937950
27 changed files with 1527 additions and 300 deletions

View File

@@ -25,6 +25,7 @@
#define AQHOME_PM_LIBNAME "aqhome"
#define AQHOME_PM_SYSCONFDIR "sysconfdir"
#define AQHOME_PM_DATADIR "datadir"
#define AQHOME_PM_RTDATADIR "rtdatadir"
#define AQHOME_PM_LOCALEDIR "localedir"
#define AQHOME_SYSCONFIG_FILE "aqhome.conf"
@@ -37,6 +38,7 @@ static void _initPathManager(void);
static void _finiPathManager(void);
static void _initI18n(void);
static void _definePath(const char *pathName, const char *pathValue);
static GWEN_STRINGLIST *_getListOfMatchingFiles(const char *pathName, const char *subFolder, const char *mask);
@@ -83,6 +85,28 @@ GWEN_STRINGLIST *AQH_GetGlobalSysconfDirs(void)
GWEN_STRINGLIST *AQH_GetListOfMatchingDataFiles(const char *subFolder, const char *mask)
{
return _getListOfMatchingFiles(AQHOME_PM_DATADIR, subFolder, mask);
}
GWEN_STRINGLIST *AQH_GetListOfMatchingRuntimeDataFiles(const char *subFolder, const char *mask)
{
return _getListOfMatchingFiles(AQHOME_PM_RTDATADIR, subFolder, mask);
}
GWEN_STRINGLIST *AQH_GetListOfMatchingSysconfFiles(const char *subFolder, const char *mask)
{
return _getListOfMatchingFiles(AQHOME_PM_SYSCONFDIR, subFolder, mask);
}
GWEN_DB_NODE *AQH_LoadConfigFile(void)
{
GWEN_BUFFER *fbuf;
@@ -161,6 +185,7 @@ void _initPathManager(void)
_definePath(AQHOME_PM_SYSCONFDIR, AQHOME_SYSCONF_DIR);
_definePath(AQHOME_PM_LOCALEDIR, AQHOME_SYSCONF_DIR);
_definePath(AQHOME_PM_DATADIR, AQHOME_DATA_DIR);
_definePath(AQHOME_PM_RTDATADIR, AQHOME_RTDATA_DIR);
}
@@ -168,6 +193,7 @@ void _initPathManager(void)
void _finiPathManager(void)
{
GWEN_PathManager_UndefinePath(AQHOME_PM_LIBNAME, AQHOME_PM_LOCALEDIR);
GWEN_PathManager_UndefinePath(AQHOME_PM_LIBNAME, AQHOME_PM_RTDATADIR);
GWEN_PathManager_UndefinePath(AQHOME_PM_LIBNAME, AQHOME_PM_DATADIR);
GWEN_PathManager_UndefinePath(AQHOME_PM_LIBNAME, AQHOME_PM_SYSCONFDIR);
GWEN_PathManager_RemovePaths(AQHOME_PM_LIBNAME);
@@ -218,3 +244,22 @@ void _definePath(const char *pathName, const char *pathValue)
GWEN_STRINGLIST *_getListOfMatchingFiles(const char *pathName, const char *subFolder, const char *mask)
{
int rv;
GWEN_STRINGLIST *sl;
sl=GWEN_StringList_new();
rv=GWEN_PathManager_GetMatchingFilesRecursively(AQHOME_PM_LIBNAME, AQHOME_PM_DATADIR, subFolder, sl, mask);
if (rv<0) {
DBG_INFO(AQH_LOGDOMAIN,
"Error listing matching data files (folder=%s, mask=%s)",
subFolder?subFolder:"<empty>", mask?mask:"<empty>");
GWEN_StringList_free(sl);
return NULL;
}
return sl;
}