Return-Path: Delivered-To: apmail-ws-axis-dev-archive@www.apache.org Received: (qmail 89769 invoked from network); 21 Oct 2004 05:04:48 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 21 Oct 2004 05:04:48 -0000 Received: (qmail 44487 invoked by uid 500); 21 Oct 2004 05:04:45 -0000 Delivered-To: apmail-ws-axis-dev-archive@ws.apache.org Received: (qmail 44451 invoked by uid 500); 21 Oct 2004 05:04:45 -0000 Mailing-List: contact axis-cvs-help@ws.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-cvs@ws.apache.org Received: (qmail 44436 invoked by uid 99); 21 Oct 2004 05:04:45 -0000 X-ASF-Spam-Status: No, hits=-10.0 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.28) with SMTP; Wed, 20 Oct 2004 22:04:45 -0700 Received: (qmail 89726 invoked by uid 1685); 21 Oct 2004 05:04:43 -0000 Date: 21 Oct 2004 05:04:43 -0000 Message-ID: <20041021050443.89725.qmail@minotaur.apache.org> From: sanjaya@apache.org To: ws-axis-cvs@apache.org Subject: cvs commit: ws-axis/c/samples/client/doclitfault MathOpsClient.cpp X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N sanjaya 2004/10/20 22:04:43 Modified: c/samples/client/doclitfault MathOpsClient.cpp Log: argument format of client changed Revision Changes Path 1.6 +63 -27 ws-axis/c/samples/client/doclitfault/MathOpsClient.cpp Index: MathOpsClient.cpp =================================================================== RCS file: /home/cvs/ws-axis/c/samples/client/doclitfault/MathOpsClient.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- MathOpsClient.cpp 6 Jul 2004 08:34:41 -0000 1.5 +++ MathOpsClient.cpp 21 Oct 2004 05:04:43 -0000 1.6 @@ -1,49 +1,89 @@ #include "MathOps.h" #include #include +#include void PrintUsage(); bool IsNumber(const char* p); +static void +usage (char *programName, char *defaultURL) +{ + cout << "\nUsage:\n" + << programName << " [-? | div number1 number2 [service_url]] " << endl + << " -? Show this help.\n" + << " service_url URL of the service.\n" + << " Default service URL is assumed to be " << defaultURL + << + "\n Could use http://localhost:8080/axis/services/echo to test with Axis Java." + << endl; +} + int main(int argc, char* argv[]) { char endpoint[256]; - const char* server="localhost"; - const char* port="80"; + char original[256]; const char* op = 0; const char* p1 = 0; const char* p2 = 0; int i1=0, i2=0; - int iResult; - char* pcDetail; - try + int iResult; + char* pcDetail; + + // Set default service URL + sprintf (endpoint, "http://localhost/axis/MathOpsDL"); + sprintf(original, "http://localhost/axis/MathOpsDL"); + + try + { + + if( argc ==1 ) + { + usage(argv[0], endpoint); + return 2; + } + + if (argc > 1) + { + if(!strncmp (argv[1], "-", 1)) + { + // Check for - only so that it works for + //-?, -h or --help; -anything + + usage(argv[0], endpoint); + return 2; + } + //less than minimum number of args OR greater than maximum number of args + else if (argc < 4 || argc > 5) + { + usage(argv[0], endpoint); + return 2; + } + else if (argc == 5) { - if (argc < 6) - { - PrintUsage(); - } - else - { - server = argv[1]; - port = argv[2]; - } - printf("Sending Requests to Server http://%s:%s ........\n\n", server, port); - sprintf(endpoint, "http://%s:%s/axis/MathOpsDL", server, port); + sprintf(endpoint, argv[4]); + } + } + + cout << endl << " Using service at " << endpoint << endl << endl; + MathOps ws(endpoint); - op = argv[3]; - p1 = argv[4]; - p2 = argv[5]; + op = argv[1]; + p1 = argv[2]; + p2 = argv[3]; if (!IsNumber(p1)) { printf("Invalid value for first \n\n"); - PrintUsage(); + usage(argv[0], original); + return 2; } if (!IsNumber(p2)) { printf("Invalid value for second \n\n"); - PrintUsage(); + usage(argv[0], original); + return 2; } i1 = atoi(p1); @@ -57,7 +97,8 @@ else { printf("Invalid operation %s\n\n", op); - PrintUsage(); + usage(argv[0], original); + return 2; } } catch(AxisException& e) @@ -75,11 +116,6 @@ return 0; } -void PrintUsage() -{ - printf("Usage :\n doclitmathops \n\n"); - exit(1); -} bool IsNumber(const char* p) {