You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by sa...@apache.org on 2004/05/21 08:01:14 UTC
cvs commit: ws-axis/c/src/common AxisConfig.cpp
sanjaya 2004/05/20 23:01:14
Modified: c/src/common AxisConfig.cpp
Log:
changes to parsing the axiscpp.conf (axisconfiguration file)
Revision Changes Path
1.21 +71 -54 ws-axis/c/src/common/AxisConfig.cpp
Index: AxisConfig.cpp
===================================================================
RCS file: /home/cvs/ws-axis/c/src/common/AxisConfig.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- AxisConfig.cpp 6 May 2004 03:55:18 -0000 1.20
+++ AxisConfig.cpp 21 May 2004 06:01:14 -0000 1.21
@@ -29,25 +29,27 @@
AxisConfig::AxisConfig ()
{
- m_pcWsddFilePath = 0;
- m_pcAxisLogPath = 0;
- m_pcAxisClientLogPath = 0;
- m_pcClientWsddFilePath = 0;
m_pcAxisHome = 0;
+ m_pcKeyArray[AXCONF_WSDDFILEPATH] = "WSDDFILEPATH";
+ m_pcKeyArray[AXCONF_LOGPATH] = "AXISLOGPATH";
+ m_pcKeyArray[AXCONF_CLIENTLOGPATH] = "AXISCLIENTLOGPATH";
+ m_pcKeyArray[AXCONF_CLIENTWSDDFILEPATH] = "CLIENTWSDDFILEPATH";
+ /*
+ The value for this is taken from the environment variable "AXIS_HOME".
+ So no need for a key for AXCONF_AXISHOME
+ */
+ m_pcKeyArray[AXCONF_AXISHOME] = 0;
+ m_pcKeyArray[AXCONF_TRANSPORTHTTP]="AXISTRANSPORT_HTTP";
+ m_pcKeyArray[AXCONF_TRANSPORTSMTP]="AXISTRANSPORT_SMTP";
+ m_pcKeyArray[AXCONF_XMLPARSER] = "AXISXMLPARSER";
}
AxisConfig::~AxisConfig ()
{
- if (m_pcWsddFilePath)
- free(m_pcWsddFilePath);
- if (m_pcAxisLogPath)
- free(m_pcAxisLogPath);
- if (m_pcAxisClientLogPath)
- free(m_pcAxisClientLogPath);
- if (m_pcClientWsddFilePath)
- free(m_pcClientWsddFilePath);
- if (m_pcAxisHome)
- free(m_pcAxisHome);
+ for(int i=0;i<NOOFPROPERTIES;i++)
+ {
+ free(m_pcValueArray[i]);
+ }
}
int AxisConfig::readConfFile ()
@@ -61,6 +63,7 @@
sConfPath = getenv ("AXIS_HOME");
+ m_pcValueArray[AXCONF_AXISHOME] = sConfPath;
if (!sConfPath)
return AXIS_FAIL;
m_pcAxisHome = (char*) malloc (CONFBUFFSIZE);
@@ -83,69 +86,83 @@
if (strcmp (key, "WSDDFILEPATH") == 0)
{
- m_pcWsddFilePath = (char*) malloc (CONFBUFFSIZE);
- strncpy (m_pcWsddFilePath, pcValue + 1, linesize - strlen (key) - 2);
- m_pcWsddFilePath[linesize - strlen (key) - 2] = '\0';
+ m_pcValueArray[AXCONF_WSDDFILEPATH] = (char*) malloc (CONFBUFFSIZE);
+ strncpy (m_pcValueArray[AXCONF_WSDDFILEPATH], pcValue +
+ 1, linesize - strlen (key) - 2);
+ *(m_pcValueArray[AXCONF_WSDDFILEPATH]+linesize - strlen (key) - 2)
+ = '\0';
}
if (strcmp (key, "AXISLOGPATH") == 0)
{
- m_pcAxisLogPath = (char*) malloc (CONFBUFFSIZE);
- strncpy (m_pcAxisLogPath, pcValue + 1, linesize - strlen (key) - 2);
- m_pcAxisLogPath[linesize - strlen (key) - 2] = '\0';
+ m_pcValueArray[AXCONF_LOGPATH] = (char*) malloc (CONFBUFFSIZE);
+ strncpy (m_pcValueArray[AXCONF_LOGPATH], pcValue +
+ 1, linesize - strlen (key) - 2);
+ *(m_pcValueArray[AXCONF_LOGPATH]+linesize - strlen (key) - 2)
+ = '\0';
}
if (strcmp (key, "AXISCLIENTLOGPATH") == 0)
{
- m_pcAxisClientLogPath = (char*) malloc (CONFBUFFSIZE);
- strncpy (m_pcAxisClientLogPath, pcValue + 1, linesize - strlen (key) - 2);
- m_pcAxisClientLogPath[linesize - strlen (key) - 2] = '\0';
+ m_pcValueArray[AXCONF_CLIENTLOGPATH] = (char*) malloc (CONFBUFFSIZE);
+ strncpy (m_pcValueArray[AXCONF_CLIENTLOGPATH], pcValue +
+ 1, linesize - strlen (key) - 2);
+ *(m_pcValueArray[AXCONF_CLIENTLOGPATH]+linesize - strlen (key) - 2)
+ = '\0';
}
if (strcmp (key, "CLIENTWSDDFILEPATH") == 0)
{
- m_pcClientWsddFilePath = (char*) malloc (CONFBUFFSIZE);
- strncpy (m_pcClientWsddFilePath, pcValue + 1,
- linesize - strlen (key) - 2);
- m_pcClientWsddFilePath[linesize - strlen (key) - 2] = '\0';
+ m_pcValueArray[AXCONF_CLIENTWSDDFILEPATH] = (char*) malloc (CONFBUFFSIZE);
+ strncpy (m_pcValueArray[AXCONF_CLIENTWSDDFILEPATH], pcValue +
+ 1, linesize - strlen (key) - 2);
+ *(m_pcValueArray[AXCONF_CLIENTWSDDFILEPATH]+linesize -
+ strlen (key) - 2) = '\0';
+ }
+ if (strcmp (key, "AXISTRANSPORT_HTTP") == 0)
+ {
+ m_pcValueArray[AXCONF_TRANSPORTHTTP] = (char*) malloc (CONFBUFFSIZE);
+ strncpy (m_pcValueArray[AXCONF_TRANSPORTHTTP], pcValue +
+ 1, linesize - strlen (key) - 2);
+ *(m_pcValueArray[AXCONF_TRANSPORTHTTP]+linesize -
+ strlen (key) - 2) = '\0';
+ }
+ if (strcmp (key, "AXISTRANSPORT_SMTP") == 0)
+ {
+ m_pcValueArray[AXCONF_TRANSPORTSMTP] = (char*) malloc (CONFBUFFSIZE);
+ strncpy (m_pcValueArray[AXCONF_TRANSPORTSMTP], pcValue +
+ 1, linesize - strlen (key) - 2);
+ *(m_pcValueArray[AXCONF_TRANSPORTSMTP]+linesize -
+ strlen (key) - 2) = '\0';
+ }
+ if (strcmp (key, "AXISXMLPARSER") == 0)
+ {
+ m_pcValueArray[AXCONF_XMLPARSER] = (char*) malloc (CONFBUFFSIZE);
+ strncpy (m_pcValueArray[AXCONF_XMLPARSER], pcValue +
+ 1, linesize - strlen (key) - 2);
+ *(m_pcValueArray[AXCONF_XMLPARSER]+linesize -
+ strlen (key) - 2) = '\0';
}
- }
+ }
return AXIS_SUCCESS;
}
-char* AxisConfig::getWsddFilePath ()
-{
- return m_pcWsddFilePath;
-}
-
-char* AxisConfig::getAxisLogPath ()
-{
- return m_pcAxisLogPath;
-}
-
-char* AxisConfig::getAxisClientLogPath ()
-{
- return m_pcAxisClientLogPath;
-}
-
-char* AxisConfig::getClientWsddFilePath ()
+char* AxisConfig::getAxConfProperty(g_axconfig property)
{
- return m_pcClientWsddFilePath;
+ return m_pcValueArray[property];
}
-char* AxisConfig::getAxisHomePath ()
-{
- return m_pcAxisHome;
-}
-/*int main(void)
+/*
+int main(void)
{
AxisConfig* objConfig = new AxisConfig();
- objConfig->ReadConfFile();
- char* pWsddPath = objConfig->GetWsddFilePath();
+ objConfig->readConfFile();
+ char* pWsddPath = objConfig->getWsddFilePath();
printf("pWsddPath:%s\n", pWsddPath);
- char* LogPath = objConfig->GetAxisLogPath();
+ char* LogPath = objConfig->getAxisLogPath();
//to build
//gcc AxisConfig.cpp -o temp -I$AXISCPP_HOME/include -L$AXISCPP_HOME/bin -lserver_engine -ldl
}
-*/
+
+*/
\ No newline at end of file