diff options
Diffstat (limited to 'libs/networking/src/ServerConfig.cc')
-rw-r--r-- | libs/networking/src/ServerConfig.cc | 70 |
1 files changed, 38 insertions, 32 deletions
diff --git a/libs/networking/src/ServerConfig.cc b/libs/networking/src/ServerConfig.cc index 29e12d9..b5f1969 100644 --- a/libs/networking/src/ServerConfig.cc +++ b/libs/networking/src/ServerConfig.cc @@ -121,38 +121,7 @@ int cServerConfig::Load(const char* FileName) int numberOfEntries = 0; while ((ce = cr->ReadEntry())) { - std::string name = std::get<0>(*ce); - - if (!strcmp("media-root", name.c_str())) { - SetDocumentRoot(std::get<1>(*ce).c_str()); - ++numberOfEntries; - } - else if (!strcmp("favicon", name.c_str())) { - SetAppIcon(std::get<1>(*ce).c_str()); - ++numberOfEntries; - } - else if (!strcmp("cmps-port", name.c_str())) { - SetPort(atoi(std::get<1>(*ce).c_str())); - ++numberOfEntries; - } -#ifdef NOT_YET - else if (!strcmp("want-auth", name.c_str())) { - SetAuthorizationRequired(!strcasecmp("true", std::get<1>(*ce).c_str())); - ++numberOfEntries; - } -#endif - else if (!strcmp("want-meta", name.c_str())) { - SetWantExtendedScan(!strcasecmp("true", std::get<1>(*ce).c_str())); - ++numberOfEntries; - } - else if (!strcmp("mediainfo", name.c_str())) { - SetMediaInfo(std::get<1>(*ce).c_str()); - ++numberOfEntries; - } - else if (!strcmp("ffmpeg", name.c_str())) { - SetFFMpeg(std::get<1>(*ce).c_str()); - ++numberOfEntries; - } + if (Eval(ce)) ++numberOfEntries; delete ce; } cr->Close(); @@ -161,6 +130,43 @@ int cServerConfig::Load(const char* FileName) return numberOfEntries > 0; } +bool cServerConfig::Eval(cConfigReader::ConfigEntry *Entry) +{ + std::string name = std::get<0>(*Entry); + + if (!strcmp("media-root", name.c_str())) { + SetDocumentRoot(std::get<1>(*Entry).c_str()); + return true; + } + else if (!strcmp("favicon", name.c_str())) { + SetAppIcon(std::get<1>(*Entry).c_str()); + return true; + } + else if (!strcmp("cmps-port", name.c_str())) { + SetPort(atoi(std::get<1>(*Entry).c_str())); + return true; + } +#ifdef NOT_YET + else if (!strcmp("want-auth", name.c_str())) { + SetAuthorizationRequired(!strcasecmp("true", std::get<1>(*ce).c_str())); + return true; + } +#endif + else if (!strcmp("want-meta", name.c_str())) { + SetWantExtendedScan(!strcasecmp("true", std::get<1>(*Entry).c_str())); + return true; + } + else if (!strcmp("mediainfo", name.c_str())) { + SetMediaInfo(std::get<1>(*Entry).c_str()); + return true; + } + else if (!strcmp("ffmpeg", name.c_str())) { + SetFFMpeg(std::get<1>(*Entry).c_str()); + return true; + } + return false; +} + int cServerConfig::Store(const char* FileName) { //TODO: |