www.pudn.com > antispam-addin.rar > configuremgr.cxx
#include "unihead.hxx"
#include "configcontrol.hxx"
#include "configuremgr.hxx"
#define CONFIG_VALUE_LEN 128
ConfigureMgr::ConfigureMgr(char* ConfigureFile)
{
m_ConfigureFile = ConfigureFile;
}
ConfigureMgr::~ConfigureMgr()
{
}
bool ConfigureMgr::getConfigure(Configure *pConfigure)
{
char szValue[CONFIG_VALUE_LEN];
int len = CONFIG_VALUE_LEN;
int nRet = 0;
ConfigControl configControl;
configControl.OpenConfig(m_ConfigureFile);
nRet = configControl.GetConfigValue("version","version",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setVersion(szValue);
nRet = configControl.GetConfigValue("mta","smtphost",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setSmtpHost(szValue);
nRet = configControl.GetConfigValue("mta","smtpport",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setSmtpPort(atoi(szValue));
nRet = configControl.GetConfigValue("mta","user",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setUser(szValue);
nRet = configControl.GetConfigValue("mta","pwd",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setPwd(szValue);
nRet = configControl.GetConfigValue("mta","hostmail",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setHostMail(szValue);
nRet = configControl.GetConfigValue("spooldb","spooldir",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setSpoolDir(szValue);
nRet = configControl.GetConfigValue("spooldb","spooltime",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setSpoolTime(szValue);
nRet = configControl.GetConfigValue("authenticdb","authenticdir",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setAuthenticDir(szValue);
nRet = configControl.GetConfigValue("template","templatemail",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setTemplateMail(szValue);
nRet = configControl.GetConfigValue("log","log",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setLogFile(szValue);
nRet = configControl.GetConfigValue("log","loglevel",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setLogLevel(atoi(szValue));
nRet = configControl.GetConfigValue("template","templatemail",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setTemplateMail(szValue);
nRet = configControl.GetConfigValue("display","displaylevel",szValue,len);
if(nRet <= 0)
{
configControl.CloseConfig();
return false;
}
pConfigure->setDisplayLevel(atoi(szValue));
configControl.CloseConfig();
return true;
}