You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by pr...@apache.org on 2006/04/12 14:37:49 UTC
svn commit: r393445 -
/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/CalculatorDocProgConfigClient.cpp
Author: prestonf
Date: Wed Apr 12 05:37:48 2006
New Revision: 393445
URL: http://svn.apache.org/viewcvs?rev=393445&view=rev
Log:
Added additional code to report errors if expected environment variables cannot be found.
Modified:
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/CalculatorDocProgConfigClient.cpp
Modified: webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/CalculatorDocProgConfigClient.cpp
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/CalculatorDocProgConfigClient.cpp?rev=393445&r1=393444&r2=393445&view=diff
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/CalculatorDocProgConfigClient.cpp (original)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/CalculatorDocProgConfigClient.cpp Wed Apr 12 05:37:48 2006
@@ -20,129 +20,151 @@
#include <iostream>
#include <signal.h>
-void sig_handler(int);
+void sig_handler( int);
void PrintUsage();
-bool IsNumber(const char* p);
+bool IsNumber( const char * p);
-int main(int argc, char* argv[])
+int main( int argc, char* argv[])
{
- char endpoint[256];
- const char* url="http://localhost:80/axis/Calculator";
- const char* op = 0;
- int i1=0, i2=0;
- char* libhome = NULL;
- char parserlocation[255] ;
- char httptransportlocation[255];
- char httpchannellocation[255];
- int iResult;
-
- signal(SIGILL, sig_handler);
- signal(SIGABRT, sig_handler);
- signal(SIGSEGV, sig_handler);
- //signal(SIGQUIT, sig_handler);
- //signal(SIGBUS, sig_handler);
- signal(SIGFPE, sig_handler);
+ char endpoint[256];
+ char * url = "http://localhost:80/axis/Calculator";
+ char * libhome = NULL;
+ char parserlocation[255];
+ char httptransportlocation[255];
+ char httpchannellocation[255];
+ int iResult;
+
+ signal( SIGILL, sig_handler);
+ signal( SIGABRT, sig_handler);
+ signal( SIGSEGV, sig_handler);
+ //signal( SIGQUIT, sig_handler);
+ //signal( SIGBUS, sig_handler);
+ signal( SIGFPE, sig_handler);
url = argv[1];
- bool bSuccess = false;
- int iRetryIterationCount = 3;
+ bool bSuccess = false;
+ int iRetryIterationCount = 3;
- do
+ do
+ {
+ try
{
- try
+ sprintf( endpoint, "%s", url);
+
+ AxisCPPConfigDefaults config;
+ char * installdir = NULL;
+
+ if( (installdir = getenv( "INSTALLDIR")) == NULL)
+ {
+ cout << "Error - Environment variable 'INSTALLDIR' has not been set." << endl;
+
+ installdir = getenv( "AXISCPP_DEPLOY");
+ }
+
+ config.setAxisHome( installdir);
+ config.setClientLog( "Client.taw");
+
+ char wsddfile[255];
+
+ sprintf( wsddfile, "%s/%s", installdir, "ClientFile.wsdd");
+
+ config.setClientWSDDFile( wsddfile);
+
+ if( (libhome = getenv( "LIBHOME")) == NULL)
+ {
+ cout << "Error - Environment variable 'LIBHOME' has not been set." << endl;
+
+ libhome = new char[ strlen( installdir) + 10];
+
+ sprintf( libhome, "%s/obj/bin", installdir);
+ }
+
+#if defined WIN32
+ sprintf( parserlocation, "%s/%s", libhome, "AxisXMLParser.dll");
+ sprintf( httptransportlocation,"%s/%s", libhome, "HTTPTransport.dll");
+ sprintf( httpchannellocation, "%s/%s", libhome, "HTTPChannel.dll");
+
+ config.setXMLParserLibrary( parserlocation);
+ config.setHTTPTransportLibrary( httptransportlocation);
+ config.setHTTPChannelLibrary( httpchannellocation);
+#elif defined AIX
+ sprintf( parserlocation, "%s/%s", libhome, "libaxis_xmlparser.a");
+ sprintf( httptransportlocation, "%s/%s", libhome, "libhttp_transport.a");
+ sprintf( httpchannellocation, "%s/%s", libhome, "libhttp_channel.a");
+
+ config.setXMLParserLibrary( parserlocation);
+ config.setHTTPTransportLibrary( httptransportlocation);
+ config.setHTTPChannelLibrary( httpchannellocation);
+#else
+ sprintf( parserlocation, "%s/%s", libhome, "libaxis_xmlparser.so");
+ sprintf( httptransportlocation, "%s/%s", libhome, "libhttp_transport.so");
+ sprintf( httpchannellocation, "%s/%s", libhome, "libhttp_channel.so");
+
+ config.setXMLParserLibrary( parserlocation);
+ config.setHTTPTransportLibrary( httptransportlocation);
+ config.setHTTPChannelLibrary( httpchannellocation);
+#endif
+
+ config.apply();
+// axishome = config.getAxisHome();
+// cout << "Axis Home = " << axishome << endl;
+
+ char * wsddfile1 = NULL;
+
+ wsddfile1 = config.getClientWSDDFile();
+
+ cout << "Client Log file name = " << config.getClientLog() << endl;
+
+ if( strcmp( parserlocation, config.getXMLParserLibrary()) == 0)
{
- sprintf(endpoint, "%s", url);
- AxisCPPConfigDefaults config;
- char* installdir = NULL;
- installdir = getenv( "INSTALLDIR" );
- config.setAxisHome(installdir);
- config.setClientLog("Client.taw");
- char wsddfile[255];
- sprintf(wsddfile,"%s/%s",installdir,"ClientFile.wsdd");
- //char* wsddfile = "ClientFile.wsdd";
- config.setClientWSDDFile(wsddfile);
-
- libhome = getenv("LIBHOME");
-
- #if defined ( WIN32 )
- sprintf(parserlocation,"%s/%s",libhome,"AxisXMLParser.dll");
- sprintf(httptransportlocation,"%s/%s",libhome,"HTTPTransport.dll");
- sprintf(httpchannellocation,"%s/%s",libhome,"HTTPChannel.dll");
- config.setXMLParserLibrary(parserlocation);
- config.setHTTPTransportLibrary(httptransportlocation);
- config.setHTTPChannelLibrary(httpchannellocation);
-
- #elif defined ( AIX )
- sprintf(parserlocation,"%s/%s",libhome,"libaxis_xmlparser.a");
- sprintf(httptransportlocation,"%s/%s",libhome,"libhttp_transport.a");
- sprintf(httpchannellocation,"%s/%s",libhome,"libhttp_channel.a");
- config.setXMLParserLibrary(parserlocation);
- config.setHTTPTransportLibrary(httptransportlocation);
- config.setHTTPChannelLibrary(httpchannellocation);
-
- #else
- sprintf(parserlocation,"%s/%s",libhome,"libaxis_xmlparser.so");
- sprintf(httptransportlocation,"%s/%s",libhome,"libhttp_transport.so");
- sprintf(httpchannellocation,"%s/%s",libhome,"libhttp_channel.so");
- config.setXMLParserLibrary(parserlocation);
- config.setHTTPTransportLibrary(httptransportlocation);
- config.setHTTPChannelLibrary(httpchannellocation);
- #endif
-
- config.apply();
- //axishome = config.getAxisHome();
- //cout << "Axis Home = " << axishome << endl;
- char* wsddfile1 = NULL;
- wsddfile1 = config.getClientWSDDFile();
- cout<< "Client Log file name = " << config.getClientLog() << endl;
- char* parser = config.getXMLParserLibrary();
- //cout << "XML Parser used = " << parser << endl;
+ cout << "XML Parser is matched" << endl;
+ }
+ else
+ {
+ cout << "XML parser is not matched" << endl;
+ }
- if (strcmp (parserlocation,parser) == 0)
- {
- cout << "XML Parser is matched" << endl;
- }
- else{
- cout << "XML parser is not matched" << endl;
- }
-
- if ( strcmp(httptransportlocation,config.getHTTPTransportLibrary()) == 0)
- {
- cout << "HTTP Transport is matched" << endl;
- }
- else{
- cout << "HTTP Transport is not matched" << endl;
- }
+ if( strcmp( httptransportlocation, config.getHTTPTransportLibrary()) == 0)
+ {
+ cout << "HTTP Transport is matched" << endl;
+ }
+ else
+ {
+ cout << "HTTP Transport is not matched" << endl;
+ }
- if ( strcmp(httpchannellocation,config.getHTTPChannelLibrary()) == 0)
- {
- cout << "HTTP Channel lib is matched" << endl;
- }
- else {
- cout << "HTTP Channel is not matched" << endl;
- }
+ if( strcmp( httpchannellocation, config.getHTTPChannelLibrary()) == 0)
+ {
+ cout << "HTTP Channel lib is matched" << endl;
+ }
+ else
+ {
+ cout << "HTTP Channel is not matched" << endl;
+ }
- Calculator ws(endpoint);
+ Calculator ws( endpoint);
- op = "add";
- i1 = 2;
- i2 = 3;
+ char * op = "add";
+ int i1 = 2;
+ int i2 = 3;
- if (strcmp(op, "add") == 0)
- {
- iResult = ws.add(i1, i2);
- cout << iResult << endl;
- bSuccess = true;
- }
+ if( strcmp( op, "add") == 0)
+ {
+ iResult = ws.add( i1, i2);
+
+ cout << iResult << endl;
+
+ bSuccess = true;
}
- catch(AxisException& e)
+ }
+ catch( AxisException& e)
{
bool bSilent = false;
if( e.getExceptionCode() == CLIENT_TRANSPORT_OPEN_CONNECTION_FAILED)
{
- if( iRetryIterationCount > 0)
+ if( iRetryIterationCount > 1)
{
bSilent = true;
}
@@ -152,45 +174,54 @@
iRetryIterationCount = 0;
}
- if( !bSilent)
+ if( !bSilent)
{
cout << "Exception : " << e.what() << endl;
}
}
- catch(exception& e)
+ catch( exception& e)
{
- cout << "Unknown exception has occured" << endl;
+ cout << "Unknown exception has occured : " << e.what() << endl;
}
- catch(...)
+ catch( ...)
{
- cout << "Unknown exception has occured" << endl;
+ cout << "Unknown exception has occured" << endl;
}
- iRetryIterationCount--;
- }
- while( iRetryIterationCount > 0 && !bSuccess);
- cout<< "---------------------- TEST COMPLETE -----------------------------"<< endl;
- return 0;
+ iRetryIterationCount--;
+ } while( iRetryIterationCount > 0 && !bSuccess);
+
+ cout << "---------------------- TEST COMPLETE -----------------------------" << endl;
+
+ return 0;
}
void PrintUsage()
{
- printf("Usage :\n Calculator <url>\n\n");
- exit(1);
+ cout << "Usage :" << endl << "Calculator <url>" << endl << endl;
+
+ exit( 1);
}
-bool IsNumber(const char* p)
+bool IsNumber( const char * p)
{
- for (int x=0; x < strlen(p); x++)
+ for( int x = 0; x < (int) strlen( p); x++)
{
- if (!isdigit(p[x])) return false;
+ if( !isdigit( p[x]))
+ {
+ return false;
+ }
}
+
return true;
}
-void sig_handler(int sig) {
- signal(sig, sig_handler);
+void sig_handler( int sig)
+{
+ signal( sig, sig_handler);
+
cout << "SIGNAL RECEIVED " << sig << endl;
- exit(1);
+
+ exit( 1);
}