Return-Path: Delivered-To: apmail-ws-axis-dev-archive@www.apache.org Received: (qmail 49842 invoked from network); 19 Jul 2008 05:33:28 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 19 Jul 2008 05:33:28 -0000 Received: (qmail 79279 invoked by uid 500); 19 Jul 2008 05:33:28 -0000 Delivered-To: apmail-ws-axis-dev-archive@ws.apache.org Received: (qmail 79154 invoked by uid 500); 19 Jul 2008 05:33:27 -0000 Mailing-List: contact axis-cvs-help@ws.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list axis-cvs@ws.apache.org Received: (qmail 79145 invoked by uid 99); 19 Jul 2008 05:33:27 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 18 Jul 2008 22:33:27 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 19 Jul 2008 05:32:41 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 0B2EF23889FE; Fri, 18 Jul 2008 22:32:36 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r678103 - in /webservices/axis/trunk/c/src/cbindings/client: CallC.cpp StubC.cpp Date: Sat, 19 Jul 2008 05:32:35 -0000 To: axis-cvs@ws.apache.org From: nadiramra@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080719053236.0B2EF23889FE@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: nadiramra Date: Fri Jul 18 22:32:34 2008 New Revision: 678103 URL: http://svn.apache.org/viewvc?rev=678103&view=rev Log: AXISCPP-401 C-support. We should not perform client request if errors have occurred. Modified: webservices/axis/trunk/c/src/cbindings/client/CallC.cpp webservices/axis/trunk/c/src/cbindings/client/StubC.cpp Modified: webservices/axis/trunk/c/src/cbindings/client/CallC.cpp URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/cbindings/client/CallC.cpp?rev=678103&r1=678102&r2=678103&view=diff ============================================================================== --- webservices/axis/trunk/c/src/cbindings/client/CallC.cpp (original) +++ webservices/axis/trunk/c/src/cbindings/client/CallC.cpp Fri Jul 18 22:32:34 2008 @@ -20,6 +20,8 @@ #include #include "../AxisObjectConverter.hpp" +#include "StubC.h" + #include #include @@ -38,11 +40,13 @@ void *exceptionHandler = (void *)axiscAxisInvokeExceptionHandler; void *stubExceptionHandler; - Stub *s = (Stub *)c->getCStub(); + StubC *s = (StubC *)c->getCStub(); if ((stubExceptionHandler = s->getCExceptionHandler()) != NULL) exceptionHandler = stubExceptionHandler; c->processSoapFault(&e, exceptionHandler); + + s->doNotPerformClientRequest = true; } @@ -279,6 +283,8 @@ Call *c = (Call*)call; + StubC *s = (StubC *)c->getCStub(); + s->doNotPerformClientRequest = false; try { @@ -336,6 +342,9 @@ int axiscCallSendAndReceive(AXISCHANDLE call) { Call *c = (Call*)call; + StubC *s = (StubC *)c->getCStub(); + if (s->doNotPerformClientRequest) + return -1; try { @@ -360,8 +369,10 @@ int axiscCallSend(AXISCHANDLE call) { - Call *c = (Call*)call; + StubC *s = (StubC *)c->getCStub(); + if (s->doNotPerformClientRequest) + return -1; try { Modified: webservices/axis/trunk/c/src/cbindings/client/StubC.cpp URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/cbindings/client/StubC.cpp?rev=678103&r1=678102&r2=678103&view=diff ============================================================================== --- webservices/axis/trunk/c/src/cbindings/client/StubC.cpp (original) +++ webservices/axis/trunk/c/src/cbindings/client/StubC.cpp Fri Jul 18 22:32:34 2008 @@ -25,18 +25,8 @@ #include #include -AXIS_CPP_NAMESPACE_START -class StubC : public Stub -{ -public : - StubC(const char *ep, AXIS_PROTOCOL_TYPE pt):Stub(ep,pt) {} - virtual ~StubC() {} - Call* getCallStubC() { return getCall(); } - void applyUserPreferencesStubC() { applyUserPreferences(); } - void includeSecureStubC() { includeSecure(); } - void setSOAPHeadersStubC() { setSOAPHeaders(); } -}; -AXIS_CPP_NAMESPACE_END +#include "StubC.h" + AXIS_CPP_NAMESPACE_USE @@ -788,12 +778,12 @@ { processException(s, e.getExceptionCode(), e.what()); + s->doNotPerformClientRequest = true; } catch ( ... ) { - - processException(s, -1, "Unrecognized exception thrown."); + s->doNotPerformClientRequest = true; } } AXISC_STORAGE_CLASS_INFO @@ -808,15 +798,14 @@ s->includeSecureStubC(); } catch ( AxisException& e ) - { - + { processException(s, e.getExceptionCode(), e.what()); + s->doNotPerformClientRequest = true; } catch ( ... ) - { - - + { processException(s, -1, "Unrecognized exception thrown."); + s->doNotPerformClientRequest = true; } } @@ -835,12 +824,12 @@ { processException(s, e.getExceptionCode(), e.what()); + s->doNotPerformClientRequest = true; } catch ( ... ) { - - processException(s, -1, "Unrecognized exception thrown."); + s->doNotPerformClientRequest = true; } }