axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Samisa Abeysinghe <samisa_abeysin...@yahoo.com>
Subject Re: The Stub base class
Date Wed, 26 May 2004 10:38:51 GMT
Roshan,
   I commited the Stub class.
   The test application is in tests/client/stubTest/stubBase folder.
   Stub.h is in include/axis/client and Stub.cpp in src/engine/client

   Please use the test sample and improve the Stub class until the java tool is updated. (add
get/remove methods)
   
   Soap body attributes, transport timeouts etc. could be made to set at stub level using
this
Stub class. 

   I tested the class on Linux and it worked, however there were problems adding content into
a
header. Also I did not test this on Windows, hence please test on windows.

Thanks,
Samisa...

--- Samisa Abeysinghe <samisa_abeysinghe@yahoo.com> wrote:
> Hi All,
>    At last, here it is!!! (see below)
>    I had to do many changes like adding copy constructors to get this stub working.
>    The hard part was not to write this stub class, but to get the rest of the code behave
in a
> way
> to support setting SOAP/Transport headers.
>    I have commited the changes to other classes but not this Stub class.
> 
>    I tested this and it works. This means that at the stub level, HTTP headers, SOAP
headers
> could
> be set.
> Sample usage:
>     InteropTestPortType ws(endpoint); //create stub object
>     ws.setEndPoint( "http://localhost:8080/axis/services/echo" );
>     ws.setTransportProperty( "Accept-Language", " da, en-gb;q=0.8, en;q=0.7" );
>     IHeaderBlock* phb = ws.createHeaderBlock( "Trans", "m", "http://ws.apache.org/axisCppTest/"
> );
> 
>    However there remains much more work: change stub generation to inherit from this
class; add
> get/remove methods for SOAP/HTTP header manipulation etc...
> 
>    Your comments on this are welcome.
> Thanks,
> Samisa...
> 
> class Stub
> {
> public:
>         Stub(const char* pchEndpointUri);
>         virtual ~Stub();
>         int initilizeCall();
>         void setEndPoint(char* pcEndPoint);
>         void setTransportProperty(const char* pcKey, const char* pcValue);
>         IHeaderBlock* createHeaderBlock(AxisChar *pachLocalName,
>                 AxisChar *pachPrefix, AxisChar *pachUri);
> 
> protected:
>         void setTransportProperties();
>         void setSOAPHeaders();
>         Call* m_pCall;
>         vector <char*> m_vKeys;
>         vector <char*> m_vValues;
>         vector <IHeaderBlock*> m_vSOAPHeaderBlocks;
> 
> };
> 
> 
> 
> 	
> 		
> __________________________________
> Do you Yahoo!?
> Friends.  Fun.  Try the all-new Yahoo! Messenger.
> http://messenger.yahoo.com/ 



	
		
__________________________________
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/ 

Mime
View raw message