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 na...@apache.org on 2008/07/19 07:32:35 UTC

svn commit: r678103 - in /webservices/axis/trunk/c/src/cbindings/client: CallC.cpp StubC.cpp

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 <axis/client/Stub.hpp>
 
 #include "../AxisObjectConverter.hpp"
+#include "StubC.h"
+
 
 #include <axis/Axis.h>
 #include <axis/GDefine.h>
@@ -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 <axis/AxisUserAPI.h>
 #include <axis/client/Stub.h>
 
-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;
     }
 }