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 wh...@apache.org on 2004/11/17 18:09:45 UTC

cvs commit: ws-axis/c/tools/trace/org/apache/axis/tracetool Exclusions.java InputCppSourceCode.java MacroPart.java Signature.java

whitlock    2004/11/17 09:09:45

  Modified:    c/src/common AxisTrace.cpp AxisTrace.h
               c/src/soap SoapDeSerializer.cpp
               c        test.xml
               c/tools/trace/org/apache/axis/tracetool Exclusions.java
                        InputCppSourceCode.java MacroPart.java
                        Signature.java
  Log:
  Fix the tests running on AIX by setting LIBPATH correctly in test.xml. Also get the tracetool to run against more of the excluded files in Exclusions.java and output environment variables to the trace on startup.
  
  Revision  Changes    Path
  1.42      +22 -0     ws-axis/c/src/common/AxisTrace.cpp
  
  Index: AxisTrace.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/common/AxisTrace.cpp,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- AxisTrace.cpp	12 Nov 2004 11:08:09 -0000	1.41
  +++ AxisTrace.cpp	17 Nov 2004 17:09:44 -0000	1.42
  @@ -23,6 +23,7 @@
   #include <time.h>
   #include <stdio.h>
   #include <stdarg.h>
  +#include <stdlib.h>
   #include "AxisUtils.h"
   #include <axis/server/GDefine.hpp>
   #include "AxisConfig.h"
  @@ -57,6 +58,7 @@
       if(AXIS_FAIL == m_fileTrace.fileOpen(sFileName, "a"))
           return AXIS_FAIL;
   	m_bLoggingOn = true;
  +      traceHeader();
   	return AXIS_SUCCESS;
   }
   
  @@ -72,6 +74,7 @@
       if(AXIS_FAIL == m_fileTrace.fileOpen(sFileName, "a"))
           return AXIS_FAIL;
   	m_bLoggingOn = true;
  +    traceHeader();
       return AXIS_SUCCESS;
   }
   
  @@ -245,6 +248,25 @@
   {
       printf ("DEBUG LINE :\n%s\n", pchLog);
       return AXIS_SUCCESS;
  +}
  +
  +void AxisTrace::traceHeader()
  +{
  +    traceLine("--------- Axis C++ trace ----------");
  +    traceLine("Dumping environment variables...");
  +    char *envVars[]={"PATH","LIBPATH","LD_LIBRARY_PATH","AXISCPP_DEPLOY","PWD",
  +        "CLASSPATH","INCLUDE","LIB","NLSPATH","OS","COMPUTERNAME","USERNAME",
  +        "HOSTNAME","LANG","LOGIN","LOGNAME","MACHTYPE","OSTYPE","UID","USER"};
  +    for (int i=0; i<sizeof(envVars)/4; i++) {
  +        string text = envVars[i];
  +        const char *value = getenv(envVars[i]);
  +        if (NULL==value) text += " was not set";
  +        else {
  +            text += "=";
  +            text += value;
  +        }
  +        traceLine(text.c_str());
  +    }
   }
   
   void AxisTrace::traceLine(const char *data) 
  
  
  
  1.16      +1 -0      ws-axis/c/src/common/AxisTrace.h
  
  Index: AxisTrace.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/common/AxisTrace.h,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- AxisTrace.h	12 Nov 2004 11:08:09 -0000	1.15
  +++ AxisTrace.h	17 Nov 2004 17:09:44 -0000	1.16
  @@ -227,6 +227,7 @@
       int setFilePerm(const char* pcFileName);
       int logthis(const char* pcLog, int level, char* arg2, int arg3);
   	void addParameter(std::string& line, AxisTraceType type, unsigned len, void *value);
  +    void traceHeader();
   };
   
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.104     +16 -48    ws-axis/c/src/soap/SoapDeSerializer.cpp
  
  Index: SoapDeSerializer.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/soap/SoapDeSerializer.cpp,v
  retrieving revision 1.103
  retrieving revision 1.104
  diff -u -r1.103 -r1.104
  --- SoapDeSerializer.cpp	17 Nov 2004 07:44:32 -0000	1.103
  +++ SoapDeSerializer.cpp	17 Nov 2004 17:09:44 -0000	1.104
  @@ -69,9 +69,14 @@
   
   AXIS_CPP_NAMESPACE_START
   
  -
   #define INITIAL_ARRAY_SIZE 1
   
  +#ifdef WIN32
  +#define LONGLONG __int64
  +#else
  +#define LONGLONG long long
  +#endif
  +
   SoapDeSerializer::SoapDeSerializer()
   {
   	m_pParser = XMLParserFactory::getParserObject();
  @@ -869,13 +874,7 @@
               case XSD_UNSIGNEDBYTE:
                   DESERIALIZE_ENCODED_ARRAY_BLOCK(unsigned char, CONV_STRTOUL)
               case XSD_LONG:
  -//FJP v Added
  -#ifdef WIN32
  -                DESERIALIZE_ENCODED_ARRAY_BLOCK(__int64, CONV_STRTOUL)
  -#else
  -                DESERIALIZE_ENCODED_ARRAY_BLOCK(long long, CONV_STRTOUL)
  -#endif
  -//FJP ^ Added
  +                DESERIALIZE_ENCODED_ARRAY_BLOCK(LONGLONG, CONV_STRTOUL)
               case XSD_INTEGER:
                   DESERIALIZE_ENCODED_ARRAY_BLOCK(long, CONV_STRTOL)
               case XSD_UNSIGNEDLONG:
  @@ -1032,13 +1031,7 @@
           case XSD_UNSIGNEDBYTE:
               DESERIALIZE_LITERAL_ARRAY_BLOCK(unsigned char, CONV_STRTOUL)
           case XSD_LONG:
  -//FJP v Added
  -#ifdef WIN32
  -            DESERIALIZE_ENCODED_ARRAY_BLOCK(__int64, CONV_STRTOUL)
  -#else
  -            DESERIALIZE_ENCODED_ARRAY_BLOCK(long long, CONV_STRTOUL)
  -#endif
  -//FJP ^ Added
  +            DESERIALIZE_ENCODED_ARRAY_BLOCK(LONGLONG, CONV_STRTOUL)
           case XSD_INTEGER:
               DESERIALIZE_LITERAL_ARRAY_BLOCK(long, CONV_STRTOL)
           case XSD_UNSIGNEDLONG:
  @@ -2138,17 +2131,10 @@
       return ret;
   }
   
  -#ifdef WIN32
  -__int64 SoapDeSerializer::getElementAsLong(const AxisChar* pName,
  -                                        const AxisChar* pNamespace)
  -{
  -    __int64 ret = 0;
  -#else
  -long long SoapDeSerializer::getElementAsLong(const AxisChar* pName,
  +LONGLONG SoapDeSerializer::getElementAsLong(const AxisChar* pName,
                                           const AxisChar* pNamespace)
   {
  -    long long ret = 0;
  -#endif
  +    LONGLONG ret = 0;
       if (AXIS_SUCCESS != m_nStatus) return ret;
       if (RPC_ENCODED == m_nStyle)
       {
  @@ -3619,14 +3605,8 @@
               *((unsigned char*)(pValue)) = strtoul(m_pNode->m_pchNameOrValue, &m_pEndptr, 10);
               break;
           case XSD_LONG:
  -//FJP v Added
  -#ifdef WIN32
  -            *((__int64*)(pValue)) = strtol(m_pNode->m_pchNameOrValue, &m_pEndptr, 10);
  -#else
  -            *((long long*)(pValue)) = strtol(m_pNode->m_pchNameOrValue, &m_pEndptr, 10);
  -#endif
  +            *((LONGLONG*)(pValue)) = strtol(m_pNode->m_pchNameOrValue, &m_pEndptr, 10);
               break;
  -//FJP ^ Added
           case XSD_INTEGER:
               *((long*)(pValue)) = strtol(m_pNode->m_pchNameOrValue, &m_pEndptr, 10);
               break;
  @@ -3667,17 +3647,10 @@
       }
   }
   
  -#ifdef WIN32
  -	__int64 SoapDeSerializer::strtoll(const char * pValue)
  +	LONGLONG SoapDeSerializer::strtoll(const char * pValue)
   	{
  -		__int64	llRetVal = 0;
  -		__int64	llPowerOf10 = 1;
  -#else
  -	long long SoapDeSerializer::strtoll(const char * pValue)
  -	{
  -		long long llRetVal = 0;
  -		long long llPowerOf10 = 1;
  -#endif
  +		LONGLONG	llRetVal = 0;
  +		LONGLONG	llPowerOf10 = 1;
   		int		iLength = strlen( pValue);
   		int		iCountDownTo = 0;
   		bool	bMinus = false;
  @@ -3695,13 +3668,8 @@
   
   		for( int iCount = iLength; iCount >= iCountDownTo; iCount--)
   		{
  -#ifdef WIN32
  -			llRetVal += (__int64)(pValue[iCount] - '0') * llPowerOf10;
  -			llPowerOf10 *= (__int64) 10;
  -#else
  -			llRetVal += (long long)(pValue[iCount] - '0') * llPowerOf10;
  -			llPowerOf10 *= (long long) 10;
  -#endif
  +			llRetVal += (LONGLONG)(pValue[iCount] - '0') * llPowerOf10;
  +			llPowerOf10 *= (LONGLONG) 10;
   		}
   
   		if( bMinus)
  
  
  
  1.20      +3 -3      ws-axis/c/test.xml
  
  Index: test.xml
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/test.xml,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- test.xml	12 Nov 2004 10:39:08 -0000	1.19
  +++ test.xml	17 Nov 2004 17:09:44 -0000	1.20
  @@ -531,9 +531,9 @@
   							<!-- <arg line="-p ${monitorPort}"/>
   							<arg line="-s localhost"/> -->
   							<arg line="${clientArgs}"/>
  -							<env key="PATH" path="${java.library.path};${dir.libraries};${dir.xmlParser};${dir.gskit}/bin"/>
  -							<env key="LD_LIBRARY_PATH" path="${dir.libraries};${dir.xmlParser};${dir.gskit}/lib"/>
  -							<env key="LIBPATH" path="${dir.libraries};${dir.xmlParser};${dir.gskit}/lib"/>
  +							<env key="PATH" path="${java.library.path}${path.separator}${dir.libraries}${path.separator}${dir.xmlParser}${path.separator}${dir.gskit}/bin"/>
  +							<env key="LD_LIBRARY_PATH" path="${dir.libraries}${path.separator}${dir.xmlParser}${path.separator}${dir.gskit}/lib"/>
  +							<env key="LIBPATH" path="${dir.libraries}${path.separator}${dir.xmlParser}${path.separator}${dir.gskit}/lib"/>
   							<env key="AXISCPP_DEPLOY" value="${axiscpp_deploy}"/>
   						</exec>
   						<echo message="EXEC FINISHED"/>
  
  
  
  1.11      +6 -19     ws-axis/c/tools/trace/org/apache/axis/tracetool/Exclusions.java
  
  Index: Exclusions.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/tools/trace/org/apache/axis/tracetool/Exclusions.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- Exclusions.java	12 Nov 2004 14:50:56 -0000	1.10
  +++ Exclusions.java	17 Nov 2004 17:09:44 -0000	1.11
  @@ -24,33 +24,20 @@
   	private final static Set badFiles =
   		new HashSet(Arrays.asList(new Object[] {
   		// Tool fails on these files
  -		"Url.cpp",
  -			"libAxiscpp.cpp",
  -			"cpplex.cpp",
  -			"cppyacc.cpp",
  +                  "libAxiscpp.cpp",
  +                  "cpplex.cpp",
  +                  "cppyacc.cpp",
  +                  "Array.hpp",
  +                  "Buffer.hpp",
  +                  "spp_converter.h",
   			"asciitab.h",
   			"iasciitab.h",
   			"latin1tab.h",
  -			"spp_converter.h",
  -			"spp_converter.c",
  -			"spp_tokenizer.c",
   			"utf8tab.h",
  -			"SoapBinInputStream.h",
  -			"SoapInputSource.h",
  -			"XMLParserXerces.h",
   			"apr_base64.c",
   			"apr_base64.h",
   			"apr_xlate.h",
  -			"Channel.hpp",
   			"Channel.h",
  -			"Channel.cpp",
  -                  "Param.h",
  -                  "Array.hpp",
  -                  "Buffer.hpp",
  -                  "SOAPTransport.h",
  -                  "SoapDeSerializer.h",
  -                  "SoapDeSerializer.cpp",
  -                  "Call.cpp",
   		// Axis.cpp contains a copyright sign (circle with a "C" in it) which 
   		// makes readline throw a MalformedInputException on linux possibly due to 
   		// locale/charset problems.
  
  
  
  1.3       +3 -1      ws-axis/c/tools/trace/org/apache/axis/tracetool/InputCppSourceCode.java
  
  Index: InputCppSourceCode.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/tools/trace/org/apache/axis/tracetool/InputCppSourceCode.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- InputCppSourceCode.java	27 Sep 2004 15:33:46 -0000	1.2
  +++ InputCppSourceCode.java	17 Nov 2004 17:09:44 -0000	1.3
  @@ -112,7 +112,9 @@
   				idx++;
   
   			} else if (
  -				!Character.isLetter(rest.charAt(0)) && '~' != rest.charAt(0)) {
  +				!Character.isLetter(rest.charAt(0)) 
  +                              && '~' != rest.charAt(0) 
  +                              && '_' != rest.charAt(0)) {
   				Utils.rude(
   					"Lines must start with a letter ",
   					name,
  
  
  
  1.3       +1 -0      ws-axis/c/tools/trace/org/apache/axis/tracetool/MacroPart.java
  
  Index: MacroPart.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/tools/trace/org/apache/axis/tracetool/MacroPart.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- MacroPart.java	27 Sep 2004 15:33:46 -0000	1.2
  +++ MacroPart.java	17 Nov 2004 17:09:44 -0000	1.3
  @@ -35,6 +35,7 @@
   					"AXIS_CPP_NAMESPACE_END",
   					"AXIS_CPP_NAMESPACE_USE",
   					"AXIS_CPP_NAMESPACE_PREFIX",
  +                              "XERCES_CPP_NAMESPACE_USE",
   					"TXPP_NAMESPACE_START",
   					"TXPP_NAMESPACE_END" }));
   	private final static Set knownMacros =
  
  
  
  1.6       +4 -2      ws-axis/c/tools/trace/org/apache/axis/tracetool/Signature.java
  
  Index: Signature.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/tools/trace/org/apache/axis/tracetool/Signature.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Signature.java	11 Nov 2004 10:51:35 -0000	1.5
  +++ Signature.java	17 Nov 2004 17:09:44 -0000	1.6
  @@ -61,7 +61,7 @@
   
   	private final static Set specialOperators =
   		new HashSet(
  -			Arrays.asList(new Object[] { "(", ")", "*", ",", "&", "]", "[" }));
  +			Arrays.asList(new Object[] { "(", ")", "*", ",", "&", "]", "[", "=" }));
   
   	/**
   	 * Takes an unparsed signature string and parses it.
  @@ -288,10 +288,12 @@
   			token = (String) it.next();
   
   			int template = 0; // Depth of template scope
  +                  boolean foundEquals = false; // Ignore default value for an optional parameter
   			ArrayList parm = new ArrayList();
   			while (!token.equals(")")
   				&& (!token.equals(",") || template > 0)) {
  -				parm.add(token);
  +                        if (token.equals("=")) foundEquals=true;
  +                        if (!foundEquals)	parm.add(token);
   				if (contains(token, "<"))
   					template++;
   				if (contains(token, ">"))