ws-axis-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From whitl...@apache.org
Subject cvs commit: ws-axis/c/tools/org/apache/axis/tools/common Utils.java
Date Thu, 20 Jan 2005 11:23:19 GMT
whitlock    2005/01/20 03:23:19

  Modified:    c/include/axis/client Stub.hpp
               c/src/cbindings/client StubC.cpp
               c/src/common AxisTrace.h
               c/src/engine XMLParserFactory.cpp XMLParserFactory.h
               c/src/transport/axis2 Axis2TransportInstantiator.cpp
               c/src/transport/axis3 ChannelFactory.cpp ChannelFactory.hpp
                        HTTPTransportInstantiator.cpp
               c/src/transport/axis3/HTTPChannel
                        HTTPChannelInstantiator.cpp
               c/src/transport/axis3/HTTPSSLChannel
                        HTTPSSLChannelInstantiator.cpp
               c/src/wsdl/org/apache/axis/wsdl/wsdl2ws WSDL2Ws.java
               c/src/xml/xerces ParserLoader.cpp
               c/tools/org/apache/axis/tools/cbindings
                        CBindingGenerator.java
               c/tools/org/apache/axis/tools/common Utils.java
  Added:       c/src/cbindings/client CallC.cpp
  Log:
  Fix trace memory leak and more C bindings.
  The trace memory leak happened because g_traceEntrypoints were being new'ed but never delete'd.
Now they are deleted in AxisTrace::deleteEntrypoints called from uninitializeLibrary in all
the dynamically loaded libraries.
  I've improved the C bindings by adding in CallC.cpp and enabling wsdl2ws to generate C stubs
  
  Revision  Changes    Path
  1.13      +1 -0      ws-axis/c/include/axis/client/Stub.hpp
  
  Index: Stub.hpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/include/axis/client/Stub.hpp,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- Stub.hpp	12 Jan 2005 17:02:05 -0000	1.12
  +++ Stub.hpp	20 Jan 2005 11:23:17 -0000	1.13
  @@ -735,6 +735,7 @@
       * Call object of the Stub. This is the point of access to the internals
       * of the Axis engine.
       */
  +    Call *getCall() { return m_pCall; }
       Call *m_pCall;
   
     /**
  
  
  
  1.2       +36 -2     ws-axis/c/src/cbindings/client/StubC.cpp
  
  Index: StubC.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/cbindings/client/StubC.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- StubC.cpp	19 Jan 2005 10:55:43 -0000	1.1
  +++ StubC.cpp	20 Jan 2005 11:23:18 -0000	1.2
  @@ -15,6 +15,20 @@
    */
   
   #include <axis/client/Stub.hpp>
  +
  +AXIS_CPP_NAMESPACE_START
  +class StubC : Stub
  +{
  +public :
  +	StubC(const char *ep, AXIS_PROTOCOL_TYPE pt):Stub(ep,pt) {}
  +	virtual ~StubC() {}
  +	Call* getCallStubC() { return getCall(); }
  +	void applyUserPreferencesStubC() { applyUserPreferences(); }
  +	void setSOAPHeadersStubC() { setSOAPHeaders(); }
  +	void setSOAPMethodAttributesStubC() { setSOAPMethodAttributes(); }
  +};
  +AXIS_CPP_NAMESPACE_END
  +
   AXIS_CPP_NAMESPACE_USE
   
   extern "C" {
  @@ -24,12 +38,12 @@
   
   AXISC_STORAGE_CLASS_INFO AXISCHANDLE axiscCreateStub(const char * pcEndPointURI, 
   	AXISC_PROTOCOL_TYPE eProtocol) {
  -	Stub *stub = new Stub(pcEndPointURI, static_cast<AXIS_PROTOCOL_TYPE>(eProtocol));
  +	StubC *stub = new StubC(pcEndPointURI, static_cast<AXIS_PROTOCOL_TYPE>(eProtocol));
   	return (AXISCHANDLE)stub;
   }
   
   AXISC_STORAGE_CLASS_INFO void axiscDestroyStub(AXISCHANDLE stub) {
  -	Stub *s = (Stub*)stub;
  +	StubC *s = (StubC*)stub;
   	delete s;
   }
   
  @@ -178,6 +192,26 @@
   AXISC_STORAGE_CLASS_INFO AXISC_PROTOCOL_TYPE axiscGetTransportProtocol(AXISCHANDLE stub)
{
   	Stub *s = (Stub*)stub;
   	return (AXISC_PROTOCOL_TYPE)(s->getTransportProtocol());
  +}
  +
  +AXISC_STORAGE_CLASS_INFO AXISCHANDLE getCall(AXISCHANDLE stub) { 
  +	StubC *s = (StubC*)stub;
  +	return s->getCallStubC();
  +}
  +
  +AXISC_STORAGE_CLASS_INFO void applyUserPreferences(AXISCHANDLE stub) { 
  +	StubC *s = (StubC*)stub;
  +	s->applyUserPreferencesStubC(); 
  +}
  +
  +AXISC_STORAGE_CLASS_INFO void setSOAPHeadersStubC(AXISCHANDLE stub) { 
  +	StubC *s = (StubC*)stub;
  +	s->setSOAPHeadersStubC(); 
  +}
  +
  +AXISC_STORAGE_CLASS_INFO void setSOAPMethodAttributesStubC(AXISCHANDLE stub) { 
  +	StubC *s = (StubC*)stub;
  +	s->setSOAPMethodAttributesStubC(); 
   }
   
   }
  
  
  
  1.1                  ws-axis/c/src/cbindings/client/CallC.cpp
  
  Index: CallC.cpp
  ===================================================================
  /*
   *   Copyright 2003-2004 The Apache Software Foundation.
   *
   *   Licensed under the Apache License, Version 2.0 (the "License");
   *   you may not use this file except in compliance with the License.
   *   You may obtain a copy of the License at
   *
   *       http://www.apache.org/licenses/LICENSE-2.0
   *
   *   Unless required by applicable law or agreed to in writing, software
   *   distributed under the License is distributed on an "AS IS" BASIS,
   *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   *   See the License for the specific language governing permissions and
   *   limitations under the License.
   */
  
  #include <axis/client/Call.hpp>
  
  AXIS_CPP_NAMESPACE_USE
  
  extern "C" {
  #include <axis/GDefine.h>
  #include <axis/AxisUserAPI.h>
  #include <axis/SoapEnvVersions.h>
  #include <axis/TypeMapping.h>
  #include <axis/WSDDDefines.h>
  #include <axis/client/Call.h>
  
  AXISC_STORAGE_CLASS_INFO AXISCHANDLE axiscCreateCall() {
  	Call *c = new Call();
  	return (AXISCHANDLE)c;
  }
  
  AXISC_STORAGE_CLASS_INFO void axiscDestroyCall(AXISCHANDLE call) {
  	Call *c = (Call*)c;
  	delete c;
  }
  
  AXISC_STORAGE_CLASS_INFO void axiscSetSOAPVersionCall(AXISCHANDLE call, AXISC_SOAP_VERSION
version) {
  	Call *c = (Call*)c;
  	c->setSOAPVersion((SOAP_VERSION)version);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscSetTransportPropertyCall(AXISCHANDLE call, AXISC_TRANSPORT_INFORMATION_TYPE
type, 
  	const char * value) {
  	Call *c = (Call*)c;
  	return c->setTransportProperty((AXIS_TRANSPORT_INFORMATION_TYPE)type, value);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscSetHandlerPropertyCall(AXISCHANDLE call, AxiscChar * name,

  	void * value, int len) {
  	Call *c = (Call*)c;
  	return c->setHandlerProperty(name,value,len);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscSetProtocolCall(AXISCHANDLE call, AXISC_PROTOCOL_TYPE
protocol) {
  	Call *c = (Call*)c;
  	return c->setProtocol((AXIS_PROTOCOL_TYPE)protocol);
  }
  
  AXISC_STORAGE_CLASS_INFO AXISC_PROTOCOL_TYPE axiscGetProtocol(AXISCHANDLE call) {
  	Call *c = (Call*)c;
  	return (AXISC_PROTOCOL_TYPE)(c->getProtocol());
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscUnInitializeCall(AXISCHANDLE call) {
  	Call *c = (Call*)c;
  	return c->unInitialize();
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscInitializeCall(AXISCHANDLE call, AXISC_PROVIDERTYPE nStyle)
{
  	Call *c = (Call*)c;
  	return c->initialize((PROVIDERTYPE)nStyle);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscInvokeCall(AXISCHANDLE call) {
  	Call *c = (Call*)c;
  	return c->invoke();
  }
  
  AXISC_STORAGE_CLASS_INFO void axiscAddCmplxParameterCall(AXISCHANDLE call, void * pObject,

  	void * pSZFunct, void * pDelFunct, const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	c->addCmplxParameter(pObject,pSZFunct,pDelFunct,pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO void axiscAddCmplxArrayParameterCall(AXISCHANDLE call, Axisc_Array
* pArray, 
  	void * pSZFunct, void * pDelFunct, void * pSizeFunct, 
  	const AxiscChar * pName, const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	c->addCmplxArrayParameter((Axis_Array*)pArray,pSZFunct,pDelFunct,pSizeFunct,pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO void axiscAddBasicArrayParameterCall(AXISCHANDLE call, Axisc_Array
* pArray, 
  	AXISC_XSDTYPE nType, const AxiscChar * pName) {
  	Call *c = (Call*)c;
  	c->addBasicArrayParameter((Axis_Array*)pArray, (XSDTYPE)nType, pName);
  }
  
  AXISC_STORAGE_CLASS_INFO void axiscAddParameterCall(AXISCHANDLE call, void * pValue, 
  	const char * pchName, AXISC_XSDTYPE nType) {
  	Call *c = (Call*)c;
  	c->addParameter(pValue,pchName,(XSDTYPE)nType);
  }
  
  AXISC_STORAGE_CLASS_INFO void axiscSetOperationCall(AXISCHANDLE call, const char * pchOperation,

  	const char * pchNamespace) {
  	Call *c = (Call*)c;
  	c->setOperation(pchOperation,pchNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscSetEndpointURICall(AXISCHANDLE call, const char * pchEndpointURI)
{
  	Call *c = (Call*)c;
  	return c->setEndpointURI(pchEndpointURI);
  }
  
  AXISC_STORAGE_CLASS_INFO AXISCHANDLE axiscCreateHeaderBlockCall(AXISCHANDLE call, AxiscChar
* pachLocalName, 
  	AxiscChar * pachUri, AxiscChar * pachPrefix) {
  	Call *c = (Call*)c;
  	return (AXISCHANDLE)(c->createHeaderBlock(pachLocalName, pachUri, pachPrefix));
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscGetElementAsIntCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsInt(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscGetFaultDetailCall(AXISCHANDLE call, char * * ppcDetail)
{
  	Call *c = (Call*)c;
  	return c->getFaultDetail(ppcDetail);
  }
  
  AXISC_STORAGE_CLASS_INFO xsdc__boolean axiscGetElementAsBooleanCall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return (xsdc__boolean)(c->getElementAsBoolean(pName,pNamespace));
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned int axiscGetElementAsUnsignedIntCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsUnsignedInt(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO short axiscGetElementAsShortCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsShort(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned short axiscGetElementAsUnsignedShortCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsUnsignedShort(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO char axiscGetElementAsByteCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsByte(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned char axiscGetElementAsUnsignedByteCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsUnsignedByte(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO xsdc__long axiscGetElementAsLongCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return (xsd__long)(c->getElementAsLong(pName,pNamespace));
  }
  
  AXISC_STORAGE_CLASS_INFO long axiscGetElementAsIntegerCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsInteger(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned long axiscGetElementAsUnsignedLongCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsUnsignedLong(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO float axiscGetElementAsFloatCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsFloat(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO double axiscGetElementAsDoubleCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsDouble(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO double axiscGetElementAsDecimalCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsDecimal(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO AxiscChar * axiscGetElementAsStringCall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsString(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO AxiscChar * axiscGetElementAsAnyURICall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsAnyURI(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO AxiscChar * axiscGetElementAsQNameCall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsQName(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO xsdc__hexBinary axiscGetElementAsHexBinaryCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	//TODO: Unimplemented
  	xsdc__hexBinary hb;
  	return hb;
  }
  
  AXISC_STORAGE_CLASS_INFO xsdc__base64Binary axiscGetElementAsBase64BinaryCall(AXISCHANDLE
call, const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	//TODO: Unimplemented
  	xsdc__base64Binary bb;
  	return bb;
  }
  
  AXISC_STORAGE_CLASS_INFO struct tm axiscGetElementAsDateTimeCall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsDateTime(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO struct tm axiscGetElementAsDateCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsDate(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO struct tm axiscGetElementAsTimeCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsTime(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO long axiscGetElementAsDurationCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getElementAsDuration(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscGetAttributeAsIntCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsInt(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO xsdc__boolean axiscGetAttributeAsBooleanCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return (xsdc__boolean)(c->getAttributeAsBoolean(pName,pNamespace));
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned int axiscGetAttributeAsUnsignedIntCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsUnsignedInt(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO short axiscGetAttributeAsShortCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsShort(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned short axiscGetAttributeAsUnsignedShortCall(AXISCHANDLE
call, const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsUnsignedShort(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO char axiscGetAttributeAsByteCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsByte(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned char axiscGetAttributeAsUnsignedByteCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsUnsignedByte(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO long axiscGetAttributeAsLongCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsLong(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO long axiscGetAttributeAsIntegerCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsInteger(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO unsigned long axiscGetAttributeAsUnsignedLongCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsUnsignedLong(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO float axiscGetAttributeAsFloatCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsFloat(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO double axiscGetAttributeAsDoubleCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsDouble(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO double axiscGetAttributeAsDecimalCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsDecimal(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO AxiscChar * axiscGetAttributeAsStringCall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsString(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO AxiscChar * axiscGetAttributeAsAnyURICall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsAnyURI(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO AxiscChar * axiscGetAttributeAsQNameCall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsQName(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO xsdc__hexBinary axiscGetAttributeAsHexBinaryCall(AXISCHANDLE call,
const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	//TODO: Unimplemented
  	xsdc__hexBinary hb;
  	return hb;
  }
  
  AXISC_STORAGE_CLASS_INFO xsdc__base64Binary axiscGetAttributeAsBase64BinaryCall(AXISCHANDLE
call, const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	//TODO: Unimplemented
  	xsdc__base64Binary bb;
  	return bb;
  }
  
  AXISC_STORAGE_CLASS_INFO struct tm axiscGetAttributeAsDateTimeCall(AXISCHANDLE call, const
AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsDateTime(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO struct tm axiscGetAttributeAsDateCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsDate(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO struct tm axiscGetAttributeAsTimeCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsTime(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO long axiscGetAttributeAsDurationCall(AXISCHANDLE call, const AxiscChar
* pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getAttributeAsDuration(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO void * axiscGetCmplxObjectCall(AXISCHANDLE call, void * pDZFunct,

  	void * pCreFunct, void * pDelFunct, const AxiscChar * pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getCmplxObject(pDZFunct,pCreFunct,pDelFunct,pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO Axisc_Array axiscGetCmplxArrayCall(AXISCHANDLE call, void * pDZFunct,

  	void * pCreFunct, void * pDelFunct, void * pSizeFunct, 
  	const AxiscChar * pName, const AxiscChar * pNamespace) {
  	//TODO: Unimplemented
  	Axisc_Array aa;
  	return aa;
  }
  
  AXISC_STORAGE_CLASS_INFO Axisc_Array axiscGetBasicArrayCall(AXISCHANDLE call, AXISC_XSDTYPE
nType, 
  	const AxiscChar * pName, const AxiscChar * pNamespace) {
  	//TODO: Unimplemented
  	Axisc_Array aa;
  	return aa;
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscCheckMessageCall(AXISCHANDLE call, const AxiscChar * pName,

  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->checkMessage(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO void * axiscCheckFaultCall(AXISCHANDLE call, const AxiscChar *
pName, 
  	const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->checkFault(pName,pNamespace);
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscGetStatusCall(AXISCHANDLE call) {
  	Call *c = (Call*)c;
  	return c->getStatus();
  }
  
  
  AXISC_STORAGE_CLASS_INFO void axiscSetProxyCall(AXISCHANDLE call, const char * pcProxyHost,

  	unsigned int uiProxyPort) {
  	Call *c = (Call*)c;
  	c->setProxy(pcProxyHost,uiProxyPort);
  }
  
  AXISC_STORAGE_CLASS_INFO AxiscAnyType * axiscGetAnyObjectCall(AXISCHANDLE call) {
  	Call *c = (Call*)c;
  	return (AxiscAnyType*)(c->getAnyObject());
  }
  
  AXISC_STORAGE_CLASS_INFO int axiscAddAnyObjectCall(AXISCHANDLE call, AxiscAnyType * pAnyObject)
{
  	Call *c = (Call*)c;
  	return c->addAnyObject((AnyType*)pAnyObject);
  }
  
  AXISC_STORAGE_CLASS_INFO const AxiscChar * axiscGetNamespacePrefixCall(AXISCHANDLE call,
const AxiscChar * pNamespace) {
  	Call *c = (Call*)c;
  	return c->getNamespacePrefix(pNamespace);
  }
  
  }
  
  
  1.27      +5 -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.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- AxisTrace.h	18 Jan 2005 15:02:20 -0000	1.26
  +++ AxisTrace.h	20 Jan 2005 11:23:18 -0000	1.27
  @@ -276,6 +276,11 @@
             g_traceEntrypoints = new AxisTraceEntrypoints;
             *g_traceEntrypoints = entrypoints;
         }
  +
  +      static void deleteTraceEntrypoints() {
  +          if (NULL!=g_traceEntrypoints)
  +              delete g_traceEntrypoints;
  +      }
   #endif
   
   private:
  
  
  
  1.22      +9 -2      ws-axis/c/src/engine/XMLParserFactory.cpp
  
  Index: XMLParserFactory.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/engine/XMLParserFactory.cpp,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- XMLParserFactory.cpp	17 Jan 2005 15:10:56 -0000	1.21
  +++ XMLParserFactory.cpp	20 Jan 2005 11:23:18 -0000	1.22
  @@ -69,8 +69,8 @@
   	  {
   #ifdef ENABLE_AXISTRACE
               // Load function to do lib level inits
  -            void (*initializeLibrary) (AxisTraceEntrypoints&);
  -            initializeLibrary = (void (*)(AxisTraceEntrypoints&))PLATFORM_GETPROCADDR(m_LibHandler,
"initializeLibrary");
  +            INIT_OBJECT2 initializeLibrary;
  +            initializeLibrary = (INIT_OBJECT2) PLATFORM_GETPROCADDR(m_LibHandler, INIT_FUNCTION2);
   
               AxisTraceEntrypoints ep;
               AxisTrace::getTraceEntrypoints(ep);
  @@ -91,6 +91,13 @@
   
   int XMLParserFactory::uninitialize()
   {
  +#ifdef ENABLE_AXISTRACE
  +      UNINIT_OBJECT2 uninitializeLibrary;
  +      uninitializeLibrary = (UNINIT_OBJECT2) PLATFORM_GETPROCADDR(m_LibHandler, UNINIT_FUNCTION2);
  +
  +      if (uninitializeLibrary)
  +          (*uninitializeLibrary)();
  +#endif
   	return unloadLib();
   }
   
  
  
  
  1.8       +5 -0      ws-axis/c/src/engine/XMLParserFactory.h
  
  Index: XMLParserFactory.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/engine/XMLParserFactory.h,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- XMLParserFactory.h	23 Nov 2004 17:21:03 -0000	1.7
  +++ XMLParserFactory.h	20 Jan 2005 11:23:18 -0000	1.8
  @@ -32,9 +32,14 @@
   
   #define CREATE_FUNCTION2 "CreateInstance"
   #define DELETE_FUNCTION2 "DestroyInstance"
  +#define INIT_FUNCTION2   "initializeLibrary"
  +#define UNINIT_FUNCTION2 "uninitializeLibrary"
   
   typedef int (* CREATE_OBJECT2) (XMLParser** inst);
   typedef int (* DELETE_OBJECT2) (XMLParser* inst);
  +typedef void (* INIT_OBJECT2) (AxisTraceEntrypoints& ep);
  +typedef void (* UNINIT_OBJECT2) ();
  +
   AXIS_CPP_NAMESPACE_START
   class XMLParserFactory  
   {
  
  
  
  1.4       +1 -0      ws-axis/c/src/transport/axis2/Axis2TransportInstantiator.cpp
  
  Index: Axis2TransportInstantiator.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis2/Axis2TransportInstantiator.cpp,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Axis2TransportInstantiator.cpp	13 Jan 2005 14:07:06 -0000	1.3
  +++ Axis2TransportInstantiator.cpp	20 Jan 2005 11:23:18 -0000	1.4
  @@ -73,6 +73,7 @@
       STORAGE_CLASS_INFO void uninitializeLibrary (void)
       {
           // Do uninit actions
  +        AxisTrace::deleteTraceEntrypoints();
       }
   }
   
  
  
  
  1.4       +9 -2      ws-axis/c/src/transport/axis3/ChannelFactory.cpp
  
  Index: ChannelFactory.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis3/ChannelFactory.cpp,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- ChannelFactory.cpp	12 Jan 2005 15:53:58 -0000	1.3
  +++ ChannelFactory.cpp	20 Jan 2005 11:23:18 -0000	1.4
  @@ -102,8 +102,8 @@
   
   #ifdef ENABLE_AXISTRACE
               // Load function to do lib level inits
  -            void (*initializeLibrary) (AxisTraceEntrypoints&);
  -            initializeLibrary = (void (*)(AxisTraceEntrypoints&))PLATFORM_GETPROCADDR(sLibHandler,
"initializeLibrary");
  +            INIT_OBJECT3 initializeLibrary;
  +            initializeLibrary = (INIT_OBJECT3) PLATFORM_GETPROCADDR(sLibHandler, INIT_FUNCTION3);
   
               AxisTraceEntrypoints ep;
               AxisTrace::getTraceEntrypoints(ep);
  @@ -144,6 +144,13 @@
   			DELETE_OBJECT3 sDelete = (DELETE_OBJECT3) PLATFORM_GETPROCADDR( m_LibHandler[iCount],
DELETE_FUNCTION3);
   
   			sDelete( pIChannel);
  +
  +#ifdef ENABLE_AXISTRACE
  +            UNINIT_OBJECT3 uninitializeLibrary;
  +            uninitializeLibrary = (UNINIT_OBJECT3) PLATFORM_GETPROCADDR(m_LibHandler[iCount],
UNINIT_FUNCTION3);
  +            if (uninitializeLibrary)
  +                 (*uninitializeLibrary)();
  +#endif
   
   			m_pChannel[iCount] = 0;
   
  
  
  
  1.2       +5 -0      ws-axis/c/src/transport/axis3/ChannelFactory.hpp
  
  Index: ChannelFactory.hpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis3/ChannelFactory.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ChannelFactory.hpp	6 Jan 2005 17:33:15 -0000	1.1
  +++ ChannelFactory.hpp	20 Jan 2005 11:23:18 -0000	1.2
  @@ -33,9 +33,14 @@
   #define ChannelFactory_MaxListSize	2
   #define CREATE_FUNCTION3			"CreateInstance"
   #define DELETE_FUNCTION3			"DestroyInstance"
  +#define INIT_FUNCTION3  			"initializeLibrary"
  +#define UNINIT_FUNCTION3			"uninitializeLibrary"
   
   typedef int (* CREATE_OBJECT3) (IChannel** inst);
   typedef int (* DELETE_OBJECT3) (IChannel* inst);
  +typedef void (* INIT_OBJECT3) (AxisTraceEntrypoints& ep);
  +typedef void (* UNINIT_OBJECT3) ();
  +
   AXIS_CPP_NAMESPACE_START
   class ChannelFactory  
   {
  
  
  
  1.6       +3 -0      ws-axis/c/src/transport/axis3/HTTPTransportInstantiator.cpp
  
  Index: HTTPTransportInstantiator.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis3/HTTPTransportInstantiator.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- HTTPTransportInstantiator.cpp	17 Jan 2005 13:34:57 -0000	1.5
  +++ HTTPTransportInstantiator.cpp	20 Jan 2005 11:23:18 -0000	1.6
  @@ -67,6 +67,9 @@
       STORAGE_CLASS_INFO void uninitializeLibrary (void)
       {
           // Do uninit actions
  +#ifdef ENABLE_AXISTRACE
  +        AxisTrace::deleteTraceEntrypoints();
  +#endif
       }
   }
   
  
  
  
  1.7       +3 -0      ws-axis/c/src/transport/axis3/HTTPChannel/HTTPChannelInstantiator.cpp
  
  Index: HTTPChannelInstantiator.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis3/HTTPChannel/HTTPChannelInstantiator.cpp,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- HTTPChannelInstantiator.cpp	17 Jan 2005 13:34:57 -0000	1.6
  +++ HTTPChannelInstantiator.cpp	20 Jan 2005 11:23:18 -0000	1.7
  @@ -78,6 +78,9 @@
       STORAGE_CLASS_INFO void uninitializeLibrary (void)
       {
           // Do uninit actions
  +#ifdef ENABLE_AXISTRACE
  +        AxisTrace::deleteTraceEntrypoints();
  +#endif
       }
   }
   
  
  
  
  1.7       +3 -0      ws-axis/c/src/transport/axis3/HTTPSSLChannel/HTTPSSLChannelInstantiator.cpp
  
  Index: HTTPSSLChannelInstantiator.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis3/HTTPSSLChannel/HTTPSSLChannelInstantiator.cpp,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- HTTPSSLChannelInstantiator.cpp	17 Jan 2005 13:34:57 -0000	1.6
  +++ HTTPSSLChannelInstantiator.cpp	20 Jan 2005 11:23:18 -0000	1.7
  @@ -78,6 +78,9 @@
       STORAGE_CLASS_INFO void uninitializeLibrary (void)
       {
           // Do uninit actions
  +#ifdef ENABLE_AXISTRACE
  +        AxisTrace::deleteTraceEntrypoints();
  +#endif
       }
   }
   
  
  
  
  1.51      +1 -11     ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java
  
  Index: WSDL2Ws.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java,v
  retrieving revision 1.50
  retrieving revision 1.51
  diff -u -r1.50 -r1.51
  --- WSDL2Ws.java	20 Dec 2004 08:42:36 -0000	1.50
  +++ WSDL2Ws.java	20 Jan 2005 11:23:18 -0000	1.51
  @@ -1121,17 +1121,7 @@
                   return;
               }
   
  -            String lang = data.getOptionBykey("l");
  -            if ("c".equals(lang))
  -            {
  -                System.err.println(
  -                    "Generation of C stubs is not currently supported");
  -                usage();
  -                return;
  -            }
  -
               WSDL2Ws.makeSystem = data.getOptionBykey("m");
  -
               try
               {
   
  @@ -1139,7 +1129,7 @@
                   gen.generateWrappers(
                       null,
                       data.getOptionBykey("o"),
  -                    "c++",
  +                    data.getOptionBykey("l"),
                       data.getOptionBykey("i"),
                       data.getOptionBykey("s"),
                       data.getOptionBykey("w"));
  
  
  
  1.5       +3 -0      ws-axis/c/src/xml/xerces/ParserLoader.cpp
  
  Index: ParserLoader.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/xml/xerces/ParserLoader.cpp,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- ParserLoader.cpp	17 Jan 2005 15:10:56 -0000	1.4
  +++ ParserLoader.cpp	20 Jan 2005 11:23:18 -0000	1.5
  @@ -65,6 +65,9 @@
   STORAGE_CLASS_INFO void uninitializeLibrary (void)
   {
         // Do uninit actions
  +#ifdef ENABLE_AXISTRACE
  +      AxisTrace::deleteTraceEntrypoints();
  +#endif
   }
   
   }
  
  
  
  1.9       +4 -2      ws-axis/c/tools/org/apache/axis/tools/cbindings/CBindingGenerator.java
  
  Index: CBindingGenerator.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/tools/org/apache/axis/tools/cbindings/CBindingGenerator.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- CBindingGenerator.java	19 Jan 2005 10:55:16 -0000	1.8
  +++ CBindingGenerator.java	20 Jan 2005 11:23:18 -0000	1.9
  @@ -241,8 +241,9 @@
   			sign = mp.getSignature();
   		}
   		
  -		// Ignore private and protected methods.
  -		if (!sign.getScope().equals("public"))
  +		// Ignore private methods.
  +		if (!sign.getScope().equals("public") &&
  +		    !sign.getScope().equals("protected"))
   			return;
           
   		String classname = sign.getClassName();
  @@ -385,6 +386,7 @@
   				type += changeAxisToAxisc(tok);
   			} else if (!Utils.cTypeQualifiers.contains(tok) && 
   				!Utils.cPrimitives.contains(tok) && 
  +				!tok.equals("tm") && 		// Leave struct tm alone
   				!tok.startsWith("xsd")) {
   				type += "AXISC_"+tok;
   			} else {
  
  
  
  1.3       +2 -1      ws-axis/c/tools/org/apache/axis/tools/common/Utils.java
  
  Index: Utils.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/tools/org/apache/axis/tools/common/Utils.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Utils.java	17 Jan 2005 12:39:16 -0000	1.2
  +++ Utils.java	20 Jan 2005 11:23:18 -0000	1.3
  @@ -27,7 +27,8 @@
   	// All the C primitive data types
   	public final static Set cPrimitives = 
   		new HashSet( Arrays.asList( new Object[] { 
  -			"void", "byte", "char", "unsigned", "signed", "int", "short", "long","double","float"
}));
  +			"void", "byte", "char", "unsigned", "signed", "int", "short", 
  +			"long", "double", "float", "struct", "class", "enum", "union" }));
   
    	// All the qualifiers that can affect C types
   	public final static Set cTypeQualifiers = 
  
  
  

Mime
View raw message