roshan      2003/07/27 00:12:40

  Modified:    c/src/server/samples/webservicewrapper WebServiceWrapper.cpp
  Log:
  after introducing new Serializer interfaces IWrapperSoapSerializer and 
IHandlerSoapSerializer
  
  Revision  Changes    Path
  1.6       +84 -2     
xml-axis/c/src/server/samples/webservicewrapper/WebServiceWrapper.cpp
  
  Index: WebServiceWrapper.cpp
  ===================================================================
  RCS file: 
/home/cvs/xml-axis/c/src/server/samples/webservicewrapper/WebServiceWrapper.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- WebServiceWrapper.cpp     24 Jul 2003 05:06:46 -0000      1.5
  +++ WebServiceWrapper.cpp     27 Jul 2003 07:12:40 -0000      1.6
  @@ -67,7 +67,7 @@
   
   #include "WebServiceWrapper.h"
   #include "../../../common/ISoapDeserializer.h"
  -#include "../../../common/ISoapSerializer.h"
  +#include "../../../common/IWrapperSoapSerializer.h"
   #include "../../../common/BasicTypeSerializer.h"
   #include "../../../common/ISoapMethod.h"
   #include "../../../common/IParam.h"
  @@ -117,7 +117,15 @@
   int webservicewrapper::SetResponseMethod(IMessageData* mc, const char* name)
   {
        string method = name;   
  +     /*
  +     comm by Roshan on 26Jul2003 4.00pm
        ISoapMethod* pMethod= mc->getSoapSerializer()->createSoapMethod();
  +     */
  +     //-----------added by roshan--------
  +     IWrapperSoapSerializer* pIWSz;
  +     mc->getSoapSerializer(&pIWSz);
  +     ISoapMethod* pMethod= pIWSz->createSoapMethod();
  +     //---------end of added by roshan--------
        pMethod->setLocalName(method + "Response");
        pMethod->setPrefix("m");
        pMethod->setUri("http://www.opensource.lk";);
  @@ -136,7 +144,20 @@
        string strRet = pWs->Echo(str);
        uParamValue value;
        value.pStrValue = strRet.c_str();
  +     /*
  +     comm by Roshan on 26Jul2003 at 4.10pm
        IParam* pRetParam = mc->getSoapSerializer()->setResponseParam(XSD_STRING, 
value);
  +     */
  +
  +
  +     //--roshan--    
  +     IWrapperSoapSerializer* pIWSz;
  +     mc->getSoapSerializer(&pIWSz);
  +
  +     IParam* pRetParam = pIWSz->setResponseParam(XSD_STRING, value);
  +     //--end ros
  +
  +
        pRetParam->SetName("EchoReturn");
        return SUCCESS;
   }
  @@ -153,7 +174,17 @@
        int ret = pWs->Add(i1, i2);
        uParamValue value;
        value.nValue = ret;
  +     /* comm ro
        IParam* pRetParam = mc->getSoapSerializer()->setResponseParam(XSD_INT, value);
  +     */
  +
  +     //--ro
  +     IWrapperSoapSerializer* pIWSz;
  +     mc->getSoapSerializer(&pIWSz);
  +     IParam* pRetParam = pIWSz->setResponseParam(XSD_INT, value);
  +     //--ro
  +
  +
        pRetParam->SetName("AddReturn");
        return SUCCESS; 
   }
  @@ -177,12 +208,34 @@
        retarr = pWs->EchoIntArray(size,arr,&retarrsize);
        delete [] arr;
   
  +     /*
  +     comm by ro
        IArrayBean* pAb = mc->getSoapSerializer()->makeArrayBean(XSD_INT, 
(void*)retarr);
  +     */
  +
  +
  +     //--roshan--    
  +     IWrapperSoapSerializer* pIWSz;
  +     mc->getSoapSerializer(&pIWSz);
  +     IArrayBean* pAb = pIWSz->makeArrayBean(XSD_INT, (void*)retarr);
  +     //--ro
  +
  +
        pAb->AddDimension(retarrsize);
        pAb->SetItemName("item");
        uParamValue value;
        value.pIArray = pAb;
  +     /*
  +     ro
        IParam* pRetParam = mc->getSoapSerializer()->setResponseParam(XSD_ARRAY, 
value);
  +     */
  +
  +
  +     //--roshan--    
  +     IParam* pRetParam = pIWSz->setResponseParam(XSD_ARRAY, value);
  +     //ro
  +
  +
        pRetParam->SetName("EchoIntArrayReturn");
        return SUCCESS; 
   }
  @@ -205,7 +258,18 @@
   
        uParamValue value;
        value.pIBean = pRet;
  +     /*
  +     ro
        IParam* pRetParam = mc->getSoapSerializer()->setResponseParam(USER_TYPE, 
value);
  +     */
  +
  +     //--roshan--    
  +     IWrapperSoapSerializer* pIWSz;
  +     mc->getSoapSerializer(&pIWSz);
  +     IParam* pRetParam = pIWSz->setResponseParam(USER_TYPE, value);
  +     //ro
  +     
  +
        pRetParam->SetName("EchoIntArrayReturn");
        return SUCCESS;
   }
  @@ -222,12 +286,30 @@
        Point* pRet = pWs->EchoPointArray(size, arr,&size);
        //delete [] arr;
   
  +     /*
  +     ro
        IArrayBean* pAb = mc->getSoapSerializer()->makeArrayBean(USER_TYPE, 
(void*)pRet);
  +     */
  +
  +     //--roshan--    
  +     IWrapperSoapSerializer* pIWSz;
  +     mc->getSoapSerializer(&pIWSz);
  +     IArrayBean* pAb = pIWSz->makeArrayBean(USER_TYPE, (void*)pRet);
  +     //ro
  +
        pAb->AddDimension(size);
        pAb->SetItemName("item");
        uParamValue value;
        value.pIArray = pAb;
  +     /*
  +     ro
        IParam* pRetParam = mc->getSoapSerializer()->setResponseParam(XSD_ARRAY, 
value);
  +     */
  +
  +     //--roshan--            
  +     IParam* pRetParam = pIWSz->setResponseParam(XSD_ARRAY, value);
  +     //ro
  +
        pRetParam->SetName("EchoPointArrayReturn");
        return SUCCESS; 
   }
  @@ -239,7 +321,7 @@
        return SUCCESS;
   }
   
  -int Point::Serialize(ISoapSerializer& pSZ)
  +int Point::Serialize(IWrapperSoapSerializer& pSZ)
   {
        m_URI = "http://www.opensource.lk/Axis/";;
        m_TypeName = "Point";
  
  
  

Reply via email to