susantha    2003/08/14 07:03:35

  Modified:    c/src/soap SoapDeSerializer.h SoapDeSerializer.cpp
  Log:
  some improvements
  
  Revision  Changes    Path
  1.8       +3 -0      xml-axis/c/src/soap/SoapDeSerializer.h
  
  Index: SoapDeSerializer.h
  ===================================================================
  RCS file: /home/cvs/xml-axis/c/src/soap/SoapDeSerializer.h,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- SoapDeSerializer.h        13 Aug 2003 14:11:10 -0000      1.7
  +++ SoapDeSerializer.h        14 Aug 2003 14:03:35 -0000      1.8
  @@ -75,6 +75,8 @@
   #include "../common/IHandlerSoapDeSerializer.h"
   #include "XMLStreamHandler.h"
   
  +#define HUGE_BUFFER_SIZE 1000
  +
   class SoapEnvelope;
   class SoapHeader;
   class SoapMethod;
  @@ -87,6 +89,7 @@
        XMLStreamHandler* m_pHandler;
        SAX2XMLReader* m_pParser;
        void* m_pInputStream;
  +     char m_hugebuffer[HUGE_BUFFER_SIZE];
   public:
        int GetVersion();
        string& GetMethodName();
  
  
  
  1.6       +3 -4      xml-axis/c/src/soap/SoapDeSerializer.cpp
  
  Index: SoapDeSerializer.cpp
  ===================================================================
  RCS file: /home/cvs/xml-axis/c/src/soap/SoapDeSerializer.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- SoapDeSerializer.cpp      13 Aug 2003 14:11:10 -0000      1.5
  +++ SoapDeSerializer.cpp      14 Aug 2003 14:03:35 -0000      1.6
  @@ -100,16 +100,14 @@
        //Deserialize
        //---------START XERCES SAX2 SPCIFIC CODE---------//
        //a huge buffer to store the whole soap request stream
  -     char hugebuffer[10000];
        //to store the number of chars returned by get_request_bytes
        int nChars = 0;
        //request a huge number of bytes to get the whole soap request
        //when pull parsing is used this should change
  -     get_request_bytes(hugebuffer, 10000, &nChars, m_pInputStream);
  +     get_request_bytes(m_hugebuffer, HUGE_BUFFER_SIZE, &nChars, m_pInputStream);
        //if no soap then quit
        if (nChars <= 0) return FAIL;
  -     pSoapInput = new MemBufInputSource((const unsigned char*)hugebuffer, nChars 
,"bufferid",false);
  -
  +     pSoapInput = new MemBufInputSource((const unsigned char*)m_hugebuffer, nChars 
,"bufferid",false);
        m_pParser->parse(*pSoapInput);
        return SUCCESS;
   }
  @@ -178,6 +176,7 @@
   
   int SoapDeSerializer::Init()
   {
  +     m_hugebuffer[0] = '\0';
        m_pHandler->Init();
        return SUCCESS;
   }
  
  
  

Reply via email to