You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by na...@apache.org on 2006/08/04 01:43:39 UTC

svn commit: r428570 [1/4] - in /webservices/axis/trunk/c/include/axis: ./ client/

Author: nadiramra
Date: Thu Aug  3 16:43:38 2006
New Revision: 428570

URL: http://svn.apache.org/viewvc?rev=428570&view=rev
Log:
Making C header files permanent - easier to maintain, cleaner files, etc.

Added:
    webservices/axis/trunk/c/include/axis/AxisCPPConfigDefaults.h
    webservices/axis/trunk/c/include/axis/AxisException.h
    webservices/axis/trunk/c/include/axis/AxisWrapperAPI.h
    webservices/axis/trunk/c/include/axis/BasicNode.h
    webservices/axis/trunk/c/include/axis/IAttribute.h
    webservices/axis/trunk/c/include/axis/IHeaderBlock.h
    webservices/axis/trunk/c/include/axis/IMessageData.h
    webservices/axis/trunk/c/include/axis/INamespace.h
    webservices/axis/trunk/c/include/axis/ISoapAttachment.h
    webservices/axis/trunk/c/include/axis/ISoapFault.h
    webservices/axis/trunk/c/include/axis/IWrapperSoapDeSerializer.h
    webservices/axis/trunk/c/include/axis/IWrapperSoapSerializer.h
    webservices/axis/trunk/c/include/axis/OtherFaultException.h
    webservices/axis/trunk/c/include/axis/SoapFaultException.h
    webservices/axis/trunk/c/include/axis/WSDDDefines.h
    webservices/axis/trunk/c/include/axis/client/Call.h
    webservices/axis/trunk/c/include/axis/client/Stub.h

Added: webservices/axis/trunk/c/include/axis/AxisCPPConfigDefaults.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/AxisCPPConfigDefaults.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/AxisCPPConfigDefaults.h (added)
+++ webservices/axis/trunk/c/include/axis/AxisCPPConfigDefaults.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,365 @@
+/*
+ *   Copyright 2005 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2005 All Rights Reserved
+ *
+ *   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.
+ *
+ */
+/**
+ * @file AxisCPPConfigDefaults.hpp
+ *
+ *
+ */
+#ifndef AXISCPPCONFIGDEFAULTS_INCLUDED
+#define AXISCPPCONFIGDEFAULTS_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/*                                                                    */
+/* THIS FILE GENERATED BY CBINDINGGENERATOR TOOL.                     */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/GDefine.h>
+
+/**
+ *   @class AxisCPPConfigDefaults
+ *   @brief class for programmatically setting configuration defaults.
+ *
+ *   AxisCPPConfigDefaults allows you to apply new configuration
+ *   defaults, prior to the instantiation of the first web service
+ *   class in the application. These programmer-set defaults may be
+ *   over-ridden by the external factors, such as..
+ *    - the values in axiscpp.conf
+ *    - the value of AXISCPP_DEPLOY
+ *
+ *   The get/set methods don't have any effect on the ACTUAL defaults. They
+ *   are mearly a bundle of values which are set on the ACTUAL defaults when
+ *   the apply() method is issued.
+ *
+ *   It consists of...
+ *   (a) get/set methods for each of the values to be found
+ *       in the configuration file, namely:
+ *       - ClientLog
+ *       - ClientWSDDFile
+ *       - XMLParserLibrary
+ *       - HTTPTransportLibrary
+ *       - HTTPChannelLibrary
+ *       - HTTPSSLChannelLibrary
+ *       - NodeName
+ *       - ListenPort
+ *       - SecureInfo
+ *       When the first web-services class is instantiated any values set in the config
+ *       file would over-ride those set by this class.
+ *   (b) get/set methods for AxisHome
+ *       This is the programmatic equivalent of the AXISCPP_DEPLOY
+ *       environment variable.
+ *       When the first class is instantiated, if AXISCPP_DEPLOY is set
+ *       it will over-ride the value set by this class.
+ *   (c) The apply() method takes any values that have been set on the object
+ *       and set them as the Axis CPP defaults for this process.
+ *
+ *   Exceptions thrown: AxisConfigException
+ *
+ *       Once the first web service is instantiated, new defaults may no longer
+ *       be applied. If this is attempted an AxisConfigException is thrown.
+ *
+ *   Usage examples
+ *   (a) Setting the location of the axiscpp.conf file to the
+ *      "current working directory"
+ *
+ *      AxisCPPDefaultConfig defConfig;
+ *      defConfig.setAxisHome(".");
+ *      defConfig.apply();
+ *
+ *
+ */
+
+/*
+ * Class definition.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscConfigDefaultsCreate();
+
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsDestroy(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the location of the client log file.  This is the programmatic equivalent of
+ * reading the ClientLogPath parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @return location of the client log file.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetClientLog(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the location of the client WSDD file.  This is the programmatic equivalent of
+ * reading the ClientWSDDFilePath parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @return location of the client WSDD file.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetClientWSDDFile(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the value for the XML Parser library name.  This is the programmatic equivalent of
+ * reading the XMLParser parameter in the axiscpp.conf configuration file.
+ *
+ * @return name of the XML Parser library.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetXMLParserLibrary(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the value for the HTTP transport library name.  This is the programmatic equivalent of
+ * reading the Transport_http parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @return name of the HTTP Transport library.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetHTTPTransportLibrary(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the value for the HTTP channel library name.  This is the programmatic equivalent of
+ * reading the Channel_HTTP parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @return name of the HTTP Channel library.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetHTTPChannelLibrary(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the value for the HTTP SSL channel library name.  This is the programmatic equivalent of
+ * reading the Channel_HTTP_SSL parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @return name of the HTTP SSL Channel library.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetHTTPSSLChannelLibrary(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the value for NodeName.  This is the programmatic equivalent of
+ * reading the NodeName parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a server.
+ *
+ * @return nodeName to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetNodeName(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the value for ListenPort.  This is the programmatic equivalent of
+ * reading the ListenPort parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a server.
+ *
+ * @return listenPort to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetListenPort(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the value for SecureInfo.  This is the programmatic equivalent of
+ * reading the SecureInfo parameter in the axiscpp.conf configuration file.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @return secureInfo to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetSecureInfo(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Get the location of AxisHome.  This is the programmatic equivalent of
+ * using the environment variable AXISCPP_DEPLOY.
+ *
+ * @return location of AxisHome.
+ */
+AXISC_STORAGE_CLASS_INFO
+char * axiscConfigDefaultsGetAxisHome(AXISCHANDLE axisCPPConfigDefaults);
+
+/**
+ * Set the location of the client log file.  This is the programmatic equivalent of
+ * setting the ClientLogPath parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @param location of the client log file.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetClientLog(AXISCHANDLE axisCPPConfigDefaults, char * location);
+
+/**
+ * Set the location of the client WSDD file.  This is the programmatic equivalent of
+ * setting the ClientWSDDFilePath parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @param location of the client WSDD file.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetClientWSDDFile(AXISCHANDLE axisCPPConfigDefaults, char * location);
+
+/**
+ * Set the value for the XML Parser library name.  This is the programmatic equivalent of
+ * setting the XMLParser parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * @param name of the XML Parser library.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetXMLParserLibrary(AXISCHANDLE axisCPPConfigDefaults, char * name);
+
+/**
+ * Set the value for the HTTP transport library name.  This is the programmatic equivalent of
+ * setting the Transport_http parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @param name of the HTTP Transport library.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetHTTPTransportLibrary(AXISCHANDLE axisCPPConfigDefaults, char * name);
+
+/**
+ * Set the value for the HTTP channel library name.  This is the programmatic equivalent of
+ * setting the Channel_HTTP parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @param name of the HTTP Channel library.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetHTTPChannelLibrary(AXISCHANDLE axisCPPConfigDefaults, char * name);
+
+/**
+ * Set the value for the HTTP SSL channel library name.  This is the programmatic equivalent of
+ * setting the Channel_HTTP_SSL parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @param name of the HTTP SSL Channel library.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetHTTPSSLChannelLibrary(AXISCHANDLE axisCPPConfigDefaults, char * name);
+
+/**
+ * Set the value for NodeName.  This is the programmatic equivalent of
+ * setting the NodeName parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a server.
+ *
+ * @param nodeName to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetNodeName(AXISCHANDLE axisCPPConfigDefaults, char * nodeName);
+
+/**
+ * Set the value for ListenPort.  This is the programmatic equivalent of
+ * setting the ListenPort parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a server.
+ *
+ * @param listenPort to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetListenPort(AXISCHANDLE axisCPPConfigDefaults, char * listenPort);
+
+/**
+ * Set the value for SecureInfo.  This is the programmatic equivalent of
+ * setting the SecureInfo parameter in the axiscpp.conf configuration file.
+ *
+ * If this parameter has been set in the axiscpp.conf configuration file
+ * this value will be ignored.
+ *
+ * This parameter is only used when Axis is operating as a client.
+ *
+ * @param secureInfo to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetSecureInfo(AXISCHANDLE axisCPPConfigDefaults, char * secureInfo);
+
+/**
+ * Set the location of AxisHome.  This is the programmatic equivalent of
+ * setting the environment variable AXISCPP_DEPLOY.
+ *
+ * If the environment variable AXISCPP_DEPLOY has been set this value
+ * will be ignored.
+ *
+ * @param location of axis home.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsSetAxisHome(AXISCHANDLE axisCPPConfigDefaults, char * location);
+
+/**
+ * Apply the set configuration values.
+ *
+ * This takes any values that have been set and applies as the Axis C++
+ * defaults for this process, it is not possible to then re-apply.
+ *
+ * @throw AxisException if the configuration defaults have already been set.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscConfigDefaultsApply(AXISCHANDLE axisCPPConfigDefaults);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* AXISCPPCONFIGDEFAULTS_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/AxisException.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/AxisException.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/AxisException.h (added)
+++ webservices/axis/trunk/c/include/axis/AxisException.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,454 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ *
+ *
+ *
+ */
+/**
+ * @file AxisException.hpp
+ *
+ *
+ */
+#ifndef AXISEXCEPTION_INCLUDED
+#define AXISEXCEPTION_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/GDefine.h>
+
+/*
+ * The following enumeration is used to serve the Axis C++ codes for
+ * faults.
+ */
+
+
+/**
+ * @enum AXISC_EXCEPTIONS
+ * Enumeration of exception codes used by AxisException
+ */
+typedef enum 
+{
+    /*The notation used for naming these exceptions is as follows
+     *CLIENT at the beginning means when this interpreted as a soap fault
+     *    it's fault code is CLIENT
+     *SERVER at the beginning means when this interpreted as a soap fault
+     *    it's fault code is SERVER
+     *SOAP that comes next to CLIENT/SERVER means this is a soap releated
+     *    exception
+     *ENGINE that comes next to CLIENT/SERVER means this is a axiscc++ engine
+     *    related exception
+     *WSDD that comes next to CLIENT/SERVER means this is a wsdd releated
+     *    exception
+     *TRANSPORT that comes next to CLIENT/SERVER means this is a transport releated
+     *    exception
+     *CONFIG that comes next to CLIENT/SERVER means this is a axiscc++ configuration
+     *    related exception
+     *AXISCC ?
+     */
+    /* SOAP faults */
+        /** AxiscSoapException:Soap Version mismatch fault occurred */
+/*0*/    SOAP_VERSION_MISMATCH, 
+        /** AxiscSoapException:Soap Must understand fault occurred */
+/*1*/    SOAP_MUST_UNDERSTAND,    
+
+    /* Client faults */
+        /**
+         * AxiscSoapException:Received message is incomplete
+         */
+/*2*/    CLIENT_SOAP_MESSAGE_INCOMPLETE,
+        /**
+         * AxiscSoapException:Soap action is empty
+         */
+/*3*/    CLIENT_SOAP_SOAP_ACTION_EMTPY,
+        /**
+         * AxiscSoapException:Received content is faulty
+         */
+/*4*/    CLIENT_SOAP_SOAP_CONTENT_ERROR,
+        /**
+         * AxiscSoapException:Request method is not a soap method
+         */
+/*5*/    CLIENT_SOAP_NO_SOAP_METHOD,
+        /**
+         * AxiscSoapException:Content is not a valid soap message
+         */
+/*6*/    CLIENT_SOAP_CONTENT_NOT_SOAP,
+        /**
+         * AxiscWsddException:Requested service not found
+         */
+/*7*/    CLIENT_WSDD_SERVICE_NOT_FOUND,
+        /**
+         * AxiscWsddException:Requested method is not allowed
+         */
+/*8*/    CLIENT_WSDD_METHOD_NOT_ALLOWED,
+        /**
+         * AxiscWsddException: Parameter type mismatch
+         */
+/*9*/    CLIENT_WSDD_PARA_TYPE_MISMATCH,
+        /**
+         * 
+         */
+/*10*/   CLIENT_ENGINE_CLIENT_HANDLER_FAILED,
+        /**
+         * HTTPTransportException:Generic client transport exception
+         */
+/*11*/   CLIENT_TRANSPORT_EXCEPTION,
+        /**
+         * HTTPTransportException:Client failed to open connection to server
+         */
+/*12*/   CLIENT_TRANSPORT_OPEN_CONNECTION_FAILED,
+        /**
+         * HTTPTransportException:Client attempted to use SSL functions without the proper prerquistes
+         */
+/*13*/   CLIENT_TRANSPORT_TYPE_MISMATCH,
+        /**
+         * CLIENT_TRANSPORT_HAS_NO_UNSECURE_TRANSPORT_LAYER
+         */
+/*14*/   CLIENT_TRANSPORT_HAS_NO_UNSECURE_TRANSPORT_LAYER,
+        /**
+         * HTTPTransportException:Client attempted to use secure transport (https) without an SSL layer
+         */
+/*15*/   CLIENT_TRANSPORT_HAS_NO_SECURE_TRANSPORT_LAYER,
+        /**
+         * 
+         */
+/*16*/   CLIENT_SSLCHANNEL_RECEPTION_EXCEPTION,
+        /**
+         * 
+         */
+/*17*/   CLIENT_SSLCHANNEL_SENDING_EXCEPTION,
+        /**
+         * 
+         */
+/*18*/   CLIENT_SSLCHANNEL_CHANNEL_INIT_ERROR,
+        /**
+         * 
+         */
+/*19*/   CLIENT_SSLCHANNEL_SOCKET_CREATE_ERROR,
+        /**
+         * 
+         */
+/*20*/   CLIENT_SSLCHANNEL_SOCKET_CONNECT_ERROR,
+        /**
+         * 
+         */
+/*21*/   CLIENT_SSLCHANNEL_INVALID_SOCKET_ERROR,
+        /**
+         * Check implementation specific error message
+         */
+/*22*/   CLIENT_SSLCHANNEL_CONTEXT_CREATE_ERROR,
+        /**
+         * Check implementation specific error message
+         */
+/*23*/   CLIENT_SSLCHANNEL_ERROR,
+        /**
+         * AxiscSoapException:Content is not unique within the MIME message
+         */
+/*24*/   CLIENT_MIME_CONTENT_ID_NOT_UNIQUE,
+
+    /* Server faults */
+        /**
+         * SERVER_ENGINE_EXCEPTION
+         */
+/*25*/    SERVER_ENGINE_EXCEPTION,
+        /**
+         * AxiscEngineException:Could not load service
+         */
+/*26*/    SERVER_ENGINE_COULD_NOT_LOAD_SRV,
+        /**
+         * AxiscEngineException:Could not load handler
+         */
+/*27*/    SERVER_ENGINE_COULD_NOT_LOAD_HDL,
+        /**
+         * DLOPEN FAILED in loading transport library
+         */
+/*28*/    SERVER_ENGINE_LOADING_TRANSPORT_FAILED,
+        /**
+         * DLOPEN FAILED in loading parser library
+         */
+/*29*/    SERVER_ENGINE_LOADING_PARSER_FAILED,
+        /**
+         * AxiscEngineException:Handler failed
+         */
+/*30*/    SERVER_ENGINE_HANDLER_FAILED,
+        /**
+         * AxiscEngineException:Web Service failed
+         */
+/*31*/    SERVER_ENGINE_WEBSERVICE_FAILED,
+        /**
+         * AxiscEngineException:Handler initialization failed
+         */
+/*32*/    SERVER_ENGINE_HANDLER_INIT_FAILED,
+        /**
+         * AxiscEngineException:Handler creation failed
+         */
+/*33*/    SERVER_ENGINE_HANDLER_CREATION_FAILED,
+        /**
+         * AxiscEngineException:Library loading failed
+         */
+/*34*/    SERVER_ENGINE_LIBRARY_LOADING_FAILED,
+        /**
+         * AxiscEngineException:Handler is not loaded
+         */
+/*35*/    SERVER_ENGINE_HANDLER_NOT_LOADED,
+        /**
+         * AxiscEngineException:Handler is being used
+         */
+/*36*/    SERVER_ENGINE_HANDLER_BEING_USED,
+        /**
+         * AxiscEngineException:Get handler failed
+         */
+/*37*/    SERVER_ENGINE_GET_HANDLER_FAILED,
+        /**
+         * AxiscEngineException:Wrong handler type
+         */
+/*38*/    SERVER_ENGINE_WRONG_HANDLER_TYPE,
+        /**
+         * AxiscConfigException:Unknown Axisc C++ Configuration Exception
+         */
+/*39*/    SERVER_CONFIG_EXCEPTION,
+        /**
+         * AxiscConfigException:Transport layer is not configured properly
+         */
+/*40*/    SERVER_CONFIG_TRANSPORT_CONF_FAILED,
+        /**
+         * AxiscConfigException:Library path is empty(Not in server.wsdd file)
+         */
+/*41*/    SERVER_CONFIG_LIBRARY_PATH_EMPTY,
+        /**
+         * AxiscWsddException:WSDD loading fail
+         */
+/*42*/    SERVER_WSDD_FILE_NOT_FOUND,
+        /**
+         * AxiscWsddException:Unknown wsdd exception
+         */
+/*43*/    SERVER_WSDD_EXCEPTION,
+        /**
+         * AxiscWsddException:No handlers configured in server.wsdd
+         */
+/*44*/    SERVER_WSDD_NO_HANDLERS_CONFIGURED,
+        /**
+         * AxiscSoapException:Unknown Soap Exception
+         */
+/*45*/    SERVER_SOAP_EXCEPTION,
+        /**
+         * 
+         */
+/*46*/    SERVER_TRANSPORT_EXCEPTION,
+        /**
+         * HTTPTransportException:Problem occurred when receiving the stream
+         */
+/*47*/    SERVER_TRANSPORT_RECEPTION_EXCEPTION,
+        /**
+         * HTTPTransportException:Problem occurred when sending the stream
+         */
+/*48*/    SERVER_TRANSPORT_SENDING_EXCEPTION,
+        /**
+         * HTTPTransportException:HTTP Error, cannot process response message
+         */
+/*49*/    SERVER_TRANSPORT_PROCESS_EXCEPTION,
+        /**
+         * HTTPTransportException:Unknow HTTP response, cannot process response message
+         */
+/*50*/    SERVER_TRANSPORT_UNKNOWN_HTTP_RESPONSE,
+        /**
+         * HTTPTransportException:HTTP transport error
+         */
+/*51*/    SERVER_TRANSPORT_HTTP_EXCEPTION,
+        /**
+         * HTTPTransportException:Unexpected string received.
+         * Most probably server returned an empty stream
+         */
+/*52*/    SERVER_TRANSPORT_UNEXPECTED_STRING,
+        /**
+         * HTTPTransportException:Cannot initialize a channel to the remote end
+         */
+/*53*/    SERVER_TRANSPORT_CHANNEL_INIT_ERROR,
+        /**
+         * AxiscTransportException:Sockets error Couldn't create socket
+         */
+/*54*/    SERVER_TRANSPORT_SOCKET_CREATE_ERROR,
+        /**
+         * AxiscTransportException:Cannot open a channel to the remote end, shutting down the channel
+         */
+/*55*/    SERVER_TRANSPORT_SOCKET_CONNECT_ERROR,
+        /**
+         * AxiscTransportException:Invalid socket. Socket may not be open
+         */
+/*56*/    SERVER_TRANSPORT_INVALID_SOCKET,
+        /**
+         * AxiscTransportException:Output streaming error on Channel while writing data
+         */
+/*57*/    SERVER_TRANSPORT_OUTPUT_STREAMING_ERROR,
+        /**
+         * AxiscTransportException:Input streaming error while getting data
+         */
+/*58*/    SERVER_TRANSPORT_INPUT_STREAMING_ERROR,
+        /**
+         * AxiscTransportException:Channel error while waiting for timeout
+         */
+/*59*/    SERVER_TRANSPORT_TIMEOUT_EXCEPTION,
+        /**
+         * AxiscTransportException:Channel error connection timeout before receiving
+         */
+/*60*/    SERVER_TRANSPORT_TIMEOUT_EXPIRED,
+        /**
+         * See implementation specific error message
+         */
+/*61*/    SERVER_TRANSPORT_LOADING_SSLCHANNEL_FAILED,
+        /**
+         * DLOPEN FAILED in loading channel library
+         */
+/*62*/    SERVER_TRANSPORT_LOADING_CHANNEL_FAILED,
+        /**
+         * AxiscTransportException:Transport buffer is empty
+         */
+/*63*/    SERVER_TRANSPORT_BUFFER_EMPTY,
+        /**
+         * AxiscParseException:Buffer received from the parser is empty.  
+         */
+/*64*/    SERVER_PARSE_BUFFER_EMPTY,
+        /**
+         * AxiscParseException:XML_STATUS_ERROR thrown from parser.  
+         */
+/*65*/    SERVER_PARSE_PARSER_FAILED, 
+        /**
+         * AxiscParseException:Error when getting the byte stream from the transport.  
+         */
+/*66*/    SERVER_PARSE_TRANSPORT_FAILED,
+        /**
+         * This is a testing error
+         */
+/*67*/    SERVER_TEST_EXCEPTION,
+        /**
+         * Unknown error
+         */
+/*68*/    SERVER_UNKNOWN_ERROR,
+        /**
+         * AxiscEngineException:Engine cannot be initialized as both client and server
+         */
+/*69*/    SERVER_CLIENT_ENGINE_MISMATCH,
+
+    /* AXISC C faults */
+    /*Following exceptions are not releated to soap faults
+     */
+        /**
+         * A service has thrown an exception. see detail 
+         */
+/*70*/    AXISC_SERVICE_THROWN_EXCEPTION,
+        /**
+         * 
+         */
+/*71*/    AXISC_UNKNOWN_ELEMENT_EXCEPTION,
+        /**
+         * Cannot deserialize the requested element.
+         * This may indicate a fault has been received.
+         */
+/*72*/    AXISC_NODE_VALUE_MISMATCH_EXCEPTION,
+        /**
+         * 
+         */
+/*73*/    AXISC_READ_CONF_EXCEPTION,
+
+    /* CONFIG faults */
+    /*Following exceptions are releated to configuration faults
+     */
+        /**
+         * AxiscConfigException:configuration defaults have already been set
+         */
+/*74*/    CONFIG_DEFAULTS_ALREADY_SET,
+    /*
+     * This FAULT_LAST is not used as a fault code, but instead is used 
+     * internaly in the code. Developers should not use this as a fault 
+     * code.
+     */
+/*75*/    FAULT_LAST 
+} AXISC_AXISC_EXCEPTIONS;
+
+/**
+ *   @class AxisException
+ *   @brief Base class for Axis C++ exception hierarchy.
+ *
+ *   This will act as the base class for Axis C++ exception hierarchy.
+ *   This is class is derived from the std c++ exception class. Derived
+ *   from this class are AxisConfigExceptin, AxisSoapExceptin, AxisWsddException,
+ *   AxisEngineException, AxisTransportException and AxisParseException.
+ *
+ */
+
+
+/** Destructor */
+AXISC_STORAGE_CLASS_INFO
+void axiscExceptionDestroy(AXISCHANDLE axisException);
+
+/**
+ *  This method is defined in std::exception. AxisException and derived
+ * classes will override this to print exception messages
+ *
+ * @return Exception message
+ */
+AXISC_STORAGE_CLASS_INFO
+const char * axiscExceptionWhat(AXISCHANDLE axisException);
+
+/**
+ * This can be called to get the exception code.
+ *
+ * @return Exception code
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscExceptionGetExceptionCode(AXISCHANDLE axisException);
+
+/**
+ * This can be called to set the exception code
+ *
+ * @param exceptionCode for this exception.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscExceptionSetExceptionCode(AXISCHANDLE axisException, int exceptionCode);
+
+/**
+ * The method setMessage(std::string psMessage) uses to set the private data member m_sMessage
+ * This method should be used to set the m_sMessage variable in derived classes.
+ *
+ * @param psMessage The exception message to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscExceptionSetMessage(AXISCHANDLE axisException, const char * psMessage);
+
+/**
+ * The method will reset exception object as if no parameters
+ * where passed to constructor
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscExceptionResetException(AXISCHANDLE axisException);
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* AXISEXCEPTION_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/AxisWrapperAPI.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/AxisWrapperAPI.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/AxisWrapperAPI.h (added)
+++ webservices/axis/trunk/c/include/axis/AxisWrapperAPI.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,81 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ *
+ *
+ */
+#ifndef AXISWRAPPERAPI_INCLUDED
+#define AXISWRAPPERAPI_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/IWrapperSoapDeSerializer.h>
+#include <axis/IWrapperSoapSerializer.h>
+
+/**
+ * @file AxisWrapperAPI.hpp
+ * This file contains the API functions that are implemented by the WSDL2Ws
+ * tool generated code to manipulate C/C++ type for each complex type in a xml
+ * schema.
+ */
+/**
+ * @fn AXIS_DESERIALIZE_FUNCT
+ * Function that deserializes a custom type
+ */
+typedef int (* AXISC_DESERIALIZE_FUNCT)(void*, void*);
+
+/**
+ * @fn AXIS_OBJECT_CREATE_FUNCT
+ * Function used to create a custom type. If nSize is 0, a singleton object
+ * is created; if nSize is greater than 0, a c-type array of nSize pointers to
+ * objects are created and returned.
+ */
+typedef void* (* AXISC_OBJECT_CREATE_FUNCT)(int nSize);
+
+/**
+ * @fn AXIS_OBJECT_DELETE_FUNCT
+ * Function used to delete a custom type. If nSize is 0, void * points to
+ * a singleton object; if nSize is greater than 0, then void* points to
+ * a c-type array of nSize pointers to objects that are to be deleted.
+ * The function will also delete the c-type array.
+ */
+typedef void (* AXISC_OBJECT_DELETE_FUNCT)(void*, int nSize);
+
+/**
+ * @fn AXIS_SERIALIZE_FUNCT
+ * Function that serializes a custom type. bArray indicates that the object
+ * in void is an element of an array (note that void* is not itself an array).
+ */
+typedef int (* AXISC_SERIALIZE_FUNCT)(void*, void*, AxiscBool bArray);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* AXISWRAPPERAPI_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/BasicNode.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/BasicNode.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/BasicNode.h (added)
+++ webservices/axis/trunk/c/include/axis/BasicNode.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,270 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ */
+/**
+ * @file BasicNode.hpp
+ *
+ */
+#ifndef BASICNODE_INCLUDED
+#define BASICNODE_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/GDefine.h>
+#include <axis/IAttribute.h>
+
+/**
+ * @enum NODE_TYPE
+ *
+ * Enumeration of support node types.
+ */
+typedef enum {
+    /**
+     * An XML element node
+     */
+    ELEMENT_NODE=1,
+    /**
+     * A text node
+     */
+    CHARACTER_NODE
+    } AXISC_NODE_TYPE;
+
+/**
+ * @class BasicNode
+ * @brief interface for the BasicNode class.
+ *
+ *
+ */
+/**
+ * Returns the Attribute of this node, corresponding to the given
+ * prefix/localname pair or the given namespace URI/localname pair.
+ * The users could get the attributes with the
+ * following combinations of pairs.
+ *  1. by prefix and localname pair (here the namespace URI(i.e pachURI
+ *      has to be a empty string)) or
+ *  2. by namespace URI and localname pair (here the prefix
+ *      (i.e pachPrefix has to be a empty string)).
+ * The operation behavior depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetAttribute(AXISCHANDLE basicNode, AxiscChar * pachPrefix, 
+	AxiscChar * pachURI, 
+	AxiscChar * pachLocalname);
+
+/**
+ * Returns the first Attribute of this node. The operation
+ * behavior depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetFirstAttribute(AXISCHANDLE basicNode);
+
+/**
+ * Returns the last Attribute of this node. The operation
+ * behavior depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetLastAttribute(AXISCHANDLE basicNode);
+
+/**
+ * Returns the next Attribute of this node. The operation
+ * behavior depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetNextAttribute(AXISCHANDLE basicNode);
+
+/**
+ * Returns the current Attribute of this node. The operation
+ * behavior depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetCurrentAttribute(AXISCHANDLE basicNode);
+
+/**
+ * Creates an Attribute and adds it to this Basic Node.
+ *
+ * @param localname The local name of the attribute.
+ * @param prefix The prefix of the attribute.
+ * @param uri The namespace uri of the attribute.
+ * @param value The value of the attribute.
+ *
+ * @return A pointer to the created Attribute will be returned.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeCreateAttribute(AXISCHANDLE basicNode, const AxiscChar * localname, 
+	const AxiscChar * prefix, 
+	const AxiscChar * uri, 
+	const AxiscChar * value);
+
+/**
+ * Returns the local name of this node. The operation
+ * behavior depends on the TYPE of the node.
+ *
+ * @return The localname of this element.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscBasicNodeGetLocalName(AXISCHANDLE basicNode);
+
+/**
+ * Returns the number of child elements of this element. The operation
+ * behavior depends on the TYPE of the node.
+ *
+ * @return The number of child elements of this element. The return value
+ * behavior depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscBasicNodeGetNoOfChildren(AXISCHANDLE basicNode);
+
+/**
+ * Gets the first Child Node of this Complex Element. The operation
+ * behavior depends on the TYPE of the node.
+ *
+ * @return The first Child Node of this Element.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetFirstChildBasicNode(AXISCHANDLE basicNode);
+
+/**
+ * Gets the last Child Node of this Complex Element. The operation
+ * behavior depends on the TYPE of the node.
+ *
+ * @return The last Child Node of this Element.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetLastChildBasicNode(AXISCHANDLE basicNode);
+
+/**
+ * Get the Child Node of the given position. The operation behavior
+ * depends on the TYPE of the node.
+ *
+ * @param iChildPosition The child position.
+ * @return The Child Node of the given position.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeGetChildBasicNode(AXISCHANDLE basicNode, int iChildPosition);
+
+/**
+ * Adds the given child node to this Element. The operation behavior
+ * depends on the TYPE of the node.
+ *
+ * @param pBasicNode the child node to be added to this Element.
+ * @return AXIS_SUCCESS to indicate successfull operation.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscBasicNodeAddChild(AXISCHANDLE basicNode, AXISCHANDLE pBasicNode);
+
+/**
+ * Gets the Node Type of the Element.
+ *
+ * @return The Node Type of the Element.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISC_NODE_TYPE axiscBasicNodeGetNodeType(AXISCHANDLE basicNode);
+
+/**
+ * Gets and return the value of this Element. The operation behavior
+ * depends on the TYPE of the node.
+ *
+ * @return The value of this Element.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscBasicNodeGetValue(AXISCHANDLE basicNode);
+
+/**
+ * Sets the value of this Element. The operation behavior
+ * depends on the TYPE of the node.
+ *
+ * @param pachValue The value to be set
+ * @return AXIS_SUCCESS to indicate success.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscBasicNodeSetValue(AXISCHANDLE basicNode, const AxiscChar * pachValue);
+
+/**
+ * Sets the namespace URI of this Element. The operation behavior
+ * depends on the TYPE of the node.
+ *
+ * @param sURI the namespace URI of this Element.
+ * @return AXIS_SUCCESS to indicate successfull operation.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscBasicNodeSetURI(AXISCHANDLE basicNode, const AxiscChar * sURI);
+
+/**
+ * Sets the local name of this Element. The operation behavior
+ * depends on the TYPE of the node.
+ *
+ * @param sLocalName the local name of this Element.
+ * @return AXIS_SUCCESS to indicate successfull operation.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscBasicNodeSetLocalName(AXISCHANDLE basicNode, const AxiscChar * sLocalName);
+
+/**
+ * Sets the prefix of this Element. The operation behavior
+ * depends on the TYPE of the node.
+ *
+ * @param sPrefix the prefix of this Element.
+ * @return AXIS_SUCCESS to indicate successfull operation.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscBasicNodeSetPrefix(AXISCHANDLE basicNode, const AxiscChar * sPrefix);
+
+/**
+ * Returns the namespace URI of this node.  The operation behavior
+ * depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscBasicNodeGetURI(AXISCHANDLE basicNode);
+
+/**
+ * Returns the prefix  of this node.  The operation behavior
+ * depends on the TYPE of the node.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscBasicNodeGetPrefix(AXISCHANDLE basicNode);
+
+/**
+ * Create a clone of the current BasicNode instance
+ * @return clone of the current BasicNode instance
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscBasicNodeCloneBasicNode(AXISCHANDLE basicNode);
+
+/**
+ * Destructor
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscBasicNodeDestroy(AXISCHANDLE basicNode);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* BASICNODE_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/IAttribute.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/IAttribute.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/IAttribute.h (added)
+++ webservices/axis/trunk/c/include/axis/IAttribute.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,116 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ */
+/**
+ * @file IAttribute.hpp
+ *
+ *
+ */
+#ifndef IATTRIBUTE_INCLUDED
+#define IATTRIBUTE_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/GDefine.h>
+
+/**
+ *   @class IAttribute
+ *   @brief interface for the IAttribute class.
+ *
+ *
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscAttributeDestroy(AXISCHANDLE attribute);
+
+/**
+ * Get the value of this attribute
+ * @return The value of this attribute
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscAttributeGetValue(AXISCHANDLE attribute);
+
+/**
+ * Get the URI of this attribute
+ * @return The URI of this attribute
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscAttributeGetURI(AXISCHANDLE attribute);
+
+/**
+ * Get the prefix of this attribute
+ * @return The prefix of this attribute
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscAttributeGetPrefix(AXISCHANDLE attribute);
+
+/**
+ * Get the local name of this attribute
+ * @return The local name of this attribute
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscAttributeGetLocalName(AXISCHANDLE attribute);
+
+/**
+ * try to set theattribute with given value
+ * @param value to set
+ * @return AXIS_SUCCESS if succeeded, AXIS_FAIL otherwise. NOTE: Passing NULL will result in a AXIS_SUCCESS
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscAttributeSetValue(AXISCHANDLE attribute, const AxiscChar * value);
+
+/**
+ * try to set the URI
+ * @param uri to set
+ * @return AXIS_SUCCESS if succeeded, AXIS_FAIL otherwise. NOTE: Passing NULL will result in a AXIS_SUCCESS
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscAttributeSetURI(AXISCHANDLE attribute, const AxiscChar * uri);
+
+/**
+ * try to set the prefix with given value
+ * @param prefix to set
+ * @return AXIS_SUCCESS if succeeded, AXIS_FAIL otherwise. NOTE: Passing NULL will result in a AXIS_SUCCESS
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscAttributeSetPrefix(AXISCHANDLE attribute, const AxiscChar * prefix);
+
+/**
+ * try to set the attribute with given value
+ * @param localname to be set
+ * @return AXIS_SUCCESS if succeeded, AXIS_FAIL otherwise. NOTE: Passing NULL will result in a AXIS_SUCCESS
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscAttributeSetLocalName(AXISCHANDLE attribute, const AxiscChar * localname);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* IATTRIBUTE_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/IHeaderBlock.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/IHeaderBlock.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/IHeaderBlock.h (added)
+++ webservices/axis/trunk/c/include/axis/IHeaderBlock.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,353 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ */
+#ifndef IHEADERBLOCK_INCLUDED
+#define IHEADERBLOCK_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/BasicNode.h>
+#include <axis/SoapEnvVersions.h>
+#include <axis/IAttribute.h>
+#include <axis/INamespace.h>
+
+/**
+ * @file IHeaderBlock.hpp
+ */
+/**
+ * @enum HEADER_BLOCK_STD_ATTR_TYPE
+ * Enumeration of standard header block attributes.
+ */
+typedef enum 
+{   
+    /**
+     * (SOAP 1.2 only) The role attribute set as next.
+     * The value will be set as "http://www.w3.org/2003/05/soap-envelope/role/next"
+     */
+    ROLE_NEXT=1,
+    
+    /**
+     * (SOAP 1.2 only) The role attribute set as none.
+     * The value will be set as "http://www.w3.org/2003/05/soap-envelope/role/none"
+     */
+    ROLE_NONE=2,
+    
+    /**
+     * (SOAP 1.2 only) The role attribute set as ultimateReceiver
+     * The value will be set as "http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
+     */
+    ROLE_ULTIMATE_RECEIVER=3,
+    
+    /**
+     * (SOAP 1.1 only) The actor attribute
+     */
+    ACTOR=4,
+
+    /**
+     * The mustUnderstand attribute set as true.
+     * For SOAP 1.1 - the value will be set as "1".
+     * For SOAP 1.2 - the value will be set as "true".
+     */
+    MUST_UNDERSTAND_TRUE= 5,
+    /**
+     * The mustUnderstand attribute set as false.
+     * For SOAP 1.1 - the value will be set as "0".
+     * For SOAP 1.2 - the value will be set as "false".
+     */
+    MUST_UNDERSTAND_FALSE=6
+} AXISC_HEADER_BLOCK_STD_ATTR_TYPE;
+
+/**
+ *  @class IHeaderBlock
+ *  @brief interface for the IHeaderBlock class.
+ *
+ *
+ */
+/**
+ * Creates a Attribute and adds it to this Header Block as a namespace.
+ *
+ * @param prefix The prefix of the attribute.
+ * @param uri The namespace uri of the attribute.
+ *
+ * @return A pointer to the created Attribute will be returned.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockCreateNamespaceDeclINamespace(AXISCHANDLE headerBlock, const AxiscChar * prefix, 
+	const AxiscChar * uri);
+
+/**
+ * Retyrbs the first child element of this Header Block.
+ *
+ * @return A pointer to the first child element of this Header Block.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockGetFirstChildBasicNode(AXISCHANDLE headerBlock);
+
+/**
+ * Returns the number of child elements of this HeaderBlock.
+ *
+ * @return The number of child elements of this HeaderBlock.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscHeaderBlockGetNoOfChildren(AXISCHANDLE headerBlock);
+
+/**
+ * Creates a child node depending on the given node type. i.e:
+ * if node type == CHARACTER_NODE then it creates a Character Element.
+ * if node type == ELEMENT_NODE then it creates a Complex Element.
+ * This method doesn't add the created child to this Header Block. If the
+ * user needs to add this created child then he has to use the
+ * addChild(BasicNode *pBasicNode) method after creating the child.
+ * If the node to be created is a CHARACTER_NODE then only the parameter
+ * pachValue will be usefull and for others you can provide NULL.
+ * If the node to be created is a ELEMENT_NODE then the parameters
+ * pachLocalName, pachPrefix, pachUri will be needed to provide and you
+ * can provide NULL for the pachValue.
+ *
+ * @param eNODE_TYPE The node type to be created, i.e CHARACTER_NODE or
+ * ELEMENT_NODE.
+ * @param pachLocalName The local name of the child node. A CHARACTER_NODE
+ * will ignore this.
+ * @param pachPrefix The prefix of the child node. A CHARACTER_NODE
+ * will ignore this.
+ * @param pachUri The namespace uri of the child node. A CHARACTER_NODE
+ * will ignore this.
+ * @param pachValue The value of the child node. A ELEMENT_NODE
+ * will ignore this.
+ *
+ * @return The child node created will be returned if the creation is
+ * successfull. If the creation is unsccessfull it will return NULL.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockCreateChildBasicNode(AXISCHANDLE headerBlock, AXISC_NODE_TYPE eNODE_TYPE, 
+	AxiscChar * pachLocalName, 
+	AxiscChar * pachPrefix, 
+	AxiscChar * pachUri, 
+	AxiscChar * pachValue);
+
+/**
+ * Creates a child node depending on the given type. If the type is
+ *  CHARACTER_NODE a CharacterElement is created. If the type is
+ *  ELEMENT_NODE a ComplexElement is created. After creating the child it
+ *  will be added as a immediate child to the header block.
+ *  It is important to note that if the type is CHARACTER_NODE only the
+ *  NODE_TYPE and value (pachValue) parameters will be usefull.If the type
+ *  is ELEMENT_NODE the parameters NODE_TYPE, pachLocalName, pachPrefix,
+ *  pachUri will be usefull.
+ *
+ * @param eNODE_TYPE The type of the child to be created, it should be either
+ *  CHARACTER_NODE for CharacterElements or ELEMENT_NODE for
+ *  ComplexElements.
+ * @param pachLocalName The local name of the complex element to be created.
+ * @param pachPrefix The prefix of the complex element to be created.
+ * @param pachUri The namespace uri of the complex element to be created.
+ * @param pachValue The value of the character element to be created.
+ *
+ * @return The child node created will be returned if the creation is
+ *  successfull. If the creation is unsccessfull it will return NULL.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockCreateImmediateChildBasicNode(AXISCHANDLE headerBlock, AXISC_NODE_TYPE eNODE_TYPE, 
+	AxiscChar * pachLocalName, 
+	AxiscChar * pachPrefix, 
+	AxiscChar * pachUri, 
+	AxiscChar * pachValue);
+
+/**
+ * A user can use this method to create a standard HeaderBlock attribute.
+ * The types of HEADER_BLOCK_STD_ATTR_TYPE are:
+ * ROLE_NEXT : To create the role attribute to point to next.
+ * ROLE_NONE : To create the role attribute to point to none.
+ * ROLE_ULTIMATE_RECEIVER : To create the role attribute to point to
+ * ultimate receiver.
+ * ACTOR : To create the actor attribute to point to next.
+ * MUST_UNDERSTAND_TRUE : To create the mustUnderstand attribute to
+ * point to true.
+ * MUST_UNDERSTAND_FALSE : To create the mustUnderstand attribute to
+ * point to false.
+ * To use ROLE_NEXT,
+ * ROLE_NONE, ROLE_ULTIMATE_RECEIVER, MUST_UNDERSTAND_TRUE,
+ * MUST_UNDERSTAND_FALSE the user has to pass SOAP_VER_1_2 as the
+ * SOAP_VERSION.
+ * To use ACTOR, MUST_UNDERSTAND_TRUE, MUST_UNDERSTAND_FALSE the user has
+ * to pass SOAP_VER_1_1 as the SOAP_VERSION.
+ * NOTE: No checking is done to see if the attributs being created on the header are correct for SOAP.
+ * e.g. if two MUST_UNDERSTAND_TRUE headers are created then the SOAP message is invalid but it will still
+ * get sent across to the server. In such instances we expect most servers to respond with a server fault.
+ *
+ * @param eStdAttrType The standard attribute to be created.
+ * The current values that can be passes are: ROLE_NEXT, ROLE_NONE,
+ * ROLE_ULTIMATE_RECEIVER, ACTOR, MUST_UNDERSTAND_TRUE,
+ * MUST_UNDERSTAND_FALSE.
+ * @param eSOAP_VERSION The related soap version.
+ * The vallues which could be
+ * passes are SOAP_VER_1_1 and SOAP_VER_1_2.
+ *
+ * @return A pointer to the created standard Attribute will be returned.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockCreateStdAttribute(AXISCHANDLE headerBlock, AXISC_HEADER_BLOCK_STD_ATTR_TYPE eStdAttrType, 
+	AXISC_SOAP_VERSION eSOAP_VERSION);
+
+/**
+ * Creates a Attribute and adds it to this Header Block.
+ * NOTE: No checking is done to see if this attribute creation applies to the xsd rules.
+ * We expect that the server side will fail.
+ * e.g. If creating more than one attribute with the same name the outcome is undefined
+ *
+ * @param localname The local name of the attribute. (mandatory)
+ * @param prefix The prefix of the attribute. (optional)
+ * @param uri The namespace uri of the attribute. (optional)
+ * @param value The value of the attribute. (optional)
+ *
+ * @return A pointer to the created Attribute will be returned.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockCreateAttribute(AXISCHANDLE headerBlock, const AxiscChar * localname, 
+	const AxiscChar * prefix, 
+	const AxiscChar * uri, 
+	const AxiscChar * value);
+
+/**
+ * Gets an Attribute from the HeaderBlock.
+ *
+ * @param localname The local name of the attribute.
+ * @param prefix The prefix of the attribute.
+ *
+ * @return the value of the attribute is returned.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscHeaderBlockGetAttributeValue(AXISCHANDLE headerBlock, const AxiscChar * localname, 
+	const AxiscChar * prefix);
+
+/**
+ * Gets and Attribute URI from the Header Block.
+ *
+ * @param localname The local name of the attribute.
+ * @param prefix The prefix of the attribute.
+ *
+ * @return the uri of the attribute is returned.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscHeaderBlockGetAttributeUri(AXISCHANDLE headerBlock, const AxiscChar * localname, 
+	const AxiscChar * prefix);
+
+/**
+ * Returns the last child element. The user has to check whether the
+ * method return NULL before proceding.
+ *
+ * @return The last child element is returned if it exists.
+ * If the child element doesn't exsist this method returns NULL.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockGetLastChildBasicNode(AXISCHANDLE headerBlock);
+
+/**
+ * Returns the child element at the given postion.
+ * The user has to check whether the method return NULL before proceding.
+ *
+ * @param iChildPosition The positon of the required child element.
+ * @return The required child element is returned if it exists.
+ * If the child element doesn't exsist this method returns NULL.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockGetChildBasicNode(AXISCHANDLE headerBlock, int iChildPosition);
+
+/**
+ * Adds a child node to the Header Block.
+ *
+ * @param pBasicNode The child node pointer which is to be added
+ * NOTE: This cannot be a pointer to a child that has already been added> If you want to add the same data twice then create a new basic node.
+ * @return AXIS_SUCCESS to indicate successfull operation.AXIS_FAIL otherwise
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscHeaderBlockAddChild(AXISCHANDLE headerBlock, AXISCHANDLE pBasicNode);
+
+/**
+ * Sets the local name of this Header Block.
+ *
+ * @param localname The localname to set in.
+ * @return AXIS_SUCCESS if successful AXIS_FAIL otherwise
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscHeaderBlockSetLocalName(AXISCHANDLE headerBlock, const AxiscChar * localname);
+
+/**
+ * Gets the local name of this Header Block.
+ *
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscHeaderBlockGetLocalName(AXISCHANDLE headerBlock);
+
+/**
+ * Sets the namespace uri of this Header Block.
+ *
+ * @param uri The namespace uri to set in. IF NULL is passed in then URI is set to ""
+ * @return AXIS_SUCCESS if successful AXIS_FAIL otherwise
+ *
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscHeaderBlockSetURI(AXISCHANDLE headerBlock, const AxiscChar * uri);
+
+/**
+ * Sets the prefix of this Header Block.
+ *
+ * @param prefix The prefix to set in.IF NULL is passed in the prefix is set to ""
+ * @return AXIS_SUCCESS if successful AXIS_FAIL otherwise
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscHeaderBlockSetPrefix(AXISCHANDLE headerBlock, const AxiscChar * prefix);
+
+
+/**
+ * Initialized the Header Block for testing.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscHeaderBlockInitializeForTesting(AXISCHANDLE headerBlock);
+
+/**
+ * Creates and returns a clone of this Header Block.
+ *
+ * @return A clone of this Header Block.
+ */
+AXISC_STORAGE_CLASS_INFO
+AXISCHANDLE axiscHeaderBlockCloneHeaderBlock(AXISCHANDLE headerBlock);
+
+/**
+ * The Destructor.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscHeaderBlockDestroy(AXISCHANDLE headerBlock);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* IHEADERBLOCK_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/IMessageData.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/IMessageData.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/IMessageData.h (added)
+++ webservices/axis/trunk/c/include/axis/IMessageData.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,204 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ */
+#ifndef IMESSAGEDATA_INCLUDED
+#define IMESSAGEDATA_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/GDefine.h>
+#include <axis/IWrapperSoapDeSerializer.h>
+#include <axis/IWrapperSoapSerializer.h>
+
+/**
+ * @file IMessageData.hpp
+ */
+/**
+ *   @class IMessageData
+ *   @brief interface for the IMessageData class.
+ */
+/**
+ * Destructor
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataDestroy(AXISCHANDLE messageData);
+
+/**
+ * This method provides access to the AdminUtils, providing a mechanism for
+ * deploying and undeploying services.
+ *
+ * It is intended that only the AdminService will make use of this API.
+ *
+ * @param pIAdminUtils will be updated with an IAdminUtils object
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataGetAdminUtils(AXISCHANDLE messageData, AXISC_IAdminUtils * * pIAdminUtils);
+
+/**
+ *  This method stores the given property value with the key, inside the
+ *  MessageData object.
+ *
+ *   @param pachName is the key of the property.
+ *   @param pachValue is the value of the property.
+ *   @param len is the size of value (pachValue).
+ *   @return AXIS_SUCCESS to indicate successfull operation.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscMessageDataSetProperty(AXISCHANDLE messageData, const AxiscChar * pachName, 
+	const void * pachValue, 
+	int len);
+
+/**
+ *  This method stores the given property value with the key, inside the
+ *  MessageData object. The value is a complex object.
+ *
+ *   @param pachName is the key of the property.
+ *   @param pachValue is the value of the property.
+ *   @param iObjectSize is the size of value (pachValue).
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataSetComplexProperty(AXISCHANDLE messageData, const AxiscChar * pachName, 
+	void * pachValue, 
+	int iObjectSize);
+
+/**
+ *  This method returns the matching property value (to the given
+ *  corresponding key)
+ *
+ *  @param sName is the key of the required property.
+ *  @return If it is found then matching property value is returned. If not found then it
+ *      will return an empty string.
+ */
+AXISC_STORAGE_CLASS_INFO
+const void * axiscMessageDataGetProperty(AXISCHANDLE messageData, const AxiscChar * sName);
+
+/**
+ *  This method returns the matching property value (to the given
+ *  corresponding key)
+ *
+ *   @param  pachName is the key of the required property.
+ *   @return If it is found then matching property value is returned.
+ *      If not found NULL is returned.
+ */
+AXISC_STORAGE_CLASS_INFO
+void * axiscMessageDataGetComplexProperty(AXISCHANDLE messageData, const AxiscChar * pachName);
+
+/**
+ *  Returns the current operation name.
+ *
+ *   @return This method will return the OperationName.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscMessageDataGetOperationName(AXISCHANDLE messageData);
+
+/**
+ *  This method will assign the current instance of SoapSerializer
+ *  to the given IWrapperSoapSerializer pointer-to-pointer.By calling this
+ *  method a caller will have access to the SoapSerializer.
+ *
+ *  @param pIWSS is a pointer to pointer used to get access to the
+ *      current instance of soapSerializer.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataGetSoapSerializer(AXISCHANDLE messageData, AXISCHANDLE pIWSS);
+
+/**
+ *  This method will assign the current instance of SoapDeSerializer
+ *  to the given IWrapperSoapDeSerializer pointer-to-pointer. By calling this
+ *  method a caller will have access to the SoapDeSerializer.
+ *
+ *   @param pIWSDS is a pointer to pointer used to store the
+ *      current instance of SoapDeSerializer.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataGetSoapDeSerializer(AXISCHANDLE messageData, AXISCHANDLE pIWSDS);
+
+/**
+ *  This method will assign the current instance of SoapSerializer
+ *  to the given IHandlerSoapSerializer pointer-to-pointer. By calling this
+ *  method a caller will have access to the SoapSerializer.
+ *
+ *   @param  pIHandlerSoapSerializer is a pointer to pointer used to store the
+ *      current instance of soapSerializer.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataGetSoapSerializer(AXISCHANDLE messageData, AXISC_IHandlerSoapSerializer * * pIHandlerSoapSerializer);
+
+/**
+ *  This method will assign the current instance of SoapDeSerializer
+ *  to the given IHandlerSoapDeSerializer pointer-to-pointer. By calling this
+ *  method a caller will have access to the SoapDeSerializer.
+ *
+ *   @param pIHandlerSoapDeSerializer is a pointer to pointer used to store the
+ *      current instance of soapDeSerializer.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataGetSoapDeSerializer(AXISCHANDLE messageData, AXISC_IHandlerSoapDeSerializer * * pIHandlerSoapDeSerializer);
+
+/**
+ *   This method will store the given username inside the MessageData object.
+ *
+ *   @param m_sUserName is the value that is passed to be set.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscMessageDataSetUserName(AXISCHANDLE messageData, char*  m_sUserName);
+
+/**
+ * This method returns the user name.
+ *
+ *   @return this method will return the UserName.
+ */
+AXISC_STORAGE_CLASS_INFO
+char*  axiscMessageDataGetUserName(AXISCHANDLE messageData);
+
+/**
+ *  This method will return a boolean value which will say whether at the time
+ *  of calling this method has already passed the pivot point.
+ *
+ *   @return Returns true if the pivot point is past. Returns false if not.
+ */
+AXISC_STORAGE_CLASS_INFO
+AxiscBool axiscMessageDataIsPastPivot(AXISCHANDLE messageData);
+
+/**
+ *   This method is used to set the pivot point status.
+ *
+ *  @param bState is the value of the state that should be set. Set true if
+ *      pivot point is past. Set false if pivot point is not past yet.
+ *  @return will return AXIS_SUCCESS to indicate successful operation.
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscMessageDataSetPastPivotState(AXISCHANDLE messageData, AxiscBool bState);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* IMESSAGEDATA_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/INamespace.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/INamespace.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/INamespace.h (added)
+++ webservices/axis/trunk/c/include/axis/INamespace.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,91 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ */
+/**
+ * @file INamespace.hpp
+ */
+/**
+ *   @class INamespace
+ *   @brief interface for the Namespace.
+ *
+ *
+ */
+#ifndef INAMESPACE_INCLUDED
+#define INAMESPACE_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+
+/**
+ * Gets the prefix of this Namespace.
+ *
+ * @return prefix of this namespace.
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscNamespaceGetPrefix(AXISCHANDLE iNamespace);
+
+/**
+ * Gets the namespace uri of this Namespace.
+ *
+ * @return namespace uri of this Namespace
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscNamespaceGetURI(AXISCHANDLE iNamespace);
+
+/**
+ * Sets the namespace uri of this Namespace.
+ *
+ * @param achURI The namespace uri to set in.
+ * @return AXIS_SUCCESS if successful AXIS_FAIL otherwise. NOTE: Passing NULL will result in a AXIS_SUCCESS
+ *
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscNamespaceSetURI(AXISCHANDLE iNamespace, const AxiscChar * achURI);
+
+/**
+ * Sets the prefix of this Namespace.
+ *
+ * @param achPrefix The prefix to set in.
+ * @return AXIS_SUCCESS if successful AXIS_FAIL otherwise. NOTE: Passing NULL will result in a AXIS_SUCCESS
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscNamespaceSetPrefix(AXISCHANDLE iNamespace, const AxiscChar * achPrefix);
+
+/**
+ * Destructor.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscNamespaceDestroy(AXISCHANDLE iNamespace);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* INAMESPACE_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/ISoapAttachment.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/ISoapAttachment.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/ISoapAttachment.h (added)
+++ webservices/axis/trunk/c/include/axis/ISoapAttachment.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,119 @@
+/*
+ *   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.
+ */
+/*
+ *
+ */
+/**
+ * @file ISoapAttachment.hpp
+ */
+#ifndef ISOAPATTACHMENT_INCLUDED
+#define ISOAPATTACHMENT_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/AxisUserAPI.h>
+
+/**
+ * @enum AXIS_ATTACHMENT_ENCODING_TYPE
+ * Enumeration of Attachment encoding types.
+ */
+typedef enum 
+{ 
+    /**
+     * Base64 encoding
+     */
+    AXISC_BASE64=0,
+    
+    /**
+     * Binary encoding
+     */
+    AXISC_BINARY = 1
+} AXISC_AXISC_ATTACHMENT_ENCODING_TYPE;
+
+
+/**
+ * @class ISoapAttachment
+ *
+ * Interface class for SOAP attachments.
+ */
+/**
+ * Get and return ID associated with the current instance.
+ *
+ * @return Attachment ID.
+ */
+AXISC_STORAGE_CLASS_INFO
+const char * axiscSoapAttachmentGetAttachmentId(AXISCHANDLE soapAttachment);
+
+/**
+ * Allows the user to add the Body to the current attachment.
+ *
+ * @param objBody Base64Binary encoded attachment body.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscSoapAttachmentAddBody(AXISCHANDLE soapAttachment, xsdc__base64Binary * objBody);
+
+/**
+ * Allows the user to add headers to the current attachments.
+ *
+ * @param pchName header name.
+ * @param pchValue header value.
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscSoapAttachmentAddHeader(AXISCHANDLE soapAttachment, const char * pchName, 
+	const char * pchValue);
+
+/**
+ * Allows the user to get the Attachment Body
+ *
+ * @return Base64Binary encoded body.
+ */
+AXISC_STORAGE_CLASS_INFO
+xsdc__base64Binary * axiscSoapAttachmentGetBody(AXISCHANDLE soapAttachment);
+
+/**
+ * Allows the user to get the required Attachment Header
+ *
+ * @param pchName The name of the required Attachment Header
+ * @return Value of the required attachment header.
+ */
+AXISC_STORAGE_CLASS_INFO
+const char * axiscSoapAttachmentGetHeader(AXISCHANDLE soapAttachment, const char * pchName);
+
+/**
+ * Destructor
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscSoapAttachmentDestroy(AXISCHANDLE soapAttachment);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* ISOAPATTACHMENT_INCLUDED */

Added: webservices/axis/trunk/c/include/axis/ISoapFault.h
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/include/axis/ISoapFault.h?rev=428570&view=auto
==============================================================================
--- webservices/axis/trunk/c/include/axis/ISoapFault.h (added)
+++ webservices/axis/trunk/c/include/axis/ISoapFault.h Thu Aug  3 16:43:38 2006
@@ -0,0 +1,162 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   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.
+ */
+/**
+ * @file ISoapFault.hpp
+ *
+ *
+ */
+#ifndef ISOAPFAULT_INCLUDED
+#define ISOAPFAULT_INCLUDED
+
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* ----------------------------------------------------------------   */
+/* THIS HEADER FILE PATTERNED AFTER CORRESPONDING hpp HEADER FILE.    */
+/* CHANGES TO hpp HEADER FILE MAY NEED TO BE PROPAGATED HERE AND IN   */
+/* THE IMPLEMEMTATION OF THE C APIS.                                  */
+/* ----------------------------------------------------------------   */
+/* NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE   */
+/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
+#include <axis/GDefine.h>
+
+/**
+ *  @class ISoapFault
+ *  @brief Interface to represent SoapFault
+ */
+/**
+ * Destructor
+ */
+AXISC_STORAGE_CLASS_INFO
+void axiscSoapFaultDestroy(AXISCHANDLE soapFault);
+
+/**
+ * When a complex fault arrives this method can be used to
+ * get the name of that fault. This is useful because once
+ * we have the fault name we can pass the information necessary
+ * to deserialize it, back to the SoapFault class.
+ *
+ * @return name of the complex fault
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscSoapFaultGetCmplxFaultObjectName(AXISCHANDLE soapFault);
+
+/**
+ * Once we know the complex fault name we can pass the information such as the
+ * knowledge to deserialize the complex fault by calling this method.
+ *
+ * @param pDZFunct deserialize callback function pointer
+ * @param pCreFunct create callback function
+ * @param pDelFunct delete callback function
+ * @param pName name
+ * @param pNamespace url
+ */
+AXISC_STORAGE_CLASS_INFO
+void * axiscSoapFaultGetCmplxFaultObject(AXISCHANDLE soapFault, void * pDZFunct, 
+	void * pCreFunct, 
+	void * pDelFunct, 
+	const AxiscChar * pName, 
+	const AxiscChar * pNamespace);
+
+/**
+ * To retrieve a simple fault detail string
+ *
+ * @return Simple fault detail
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscSoapFaultGetSimpleFaultDetail(AXISCHANDLE soapFault);
+
+/**
+ * To retrieve the soap fault code
+ *
+ * @return fault code
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscSoapFaultGetFaultcode(AXISCHANDLE soapFault);
+
+/**
+ * To retrieve the soap fault string
+ *
+ * @return fault string
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscSoapFaultGetFaultstring(AXISCHANDLE soapFault);
+
+/**
+ * To retrieve the soap fault actor
+ *
+ * @return fault actor
+ */
+AXISC_STORAGE_CLASS_INFO
+const AxiscChar * axiscSoapFaultGetFaultactor(AXISCHANDLE soapFault);
+
+/**
+ * To set the soap fault code
+ *
+ * @param sFaultcode fault code
+ * @return status
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscSoapFaultSetFaultcode(AXISCHANDLE soapFault, const AxiscChar * sFaultcode);
+
+/**
+ * To set the soap fault string
+ *
+ * @param sFaultstring fault string
+ * @return status
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscSoapFaultSetFaultstring(AXISCHANDLE soapFault, const AxiscChar * sFaultstring);
+
+/**
+ * To set the soap fault actor
+ *
+ * @param sFaultactor fault actor
+ * @return status
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscSoapFaultSetFaultactor(AXISCHANDLE soapFault, const AxiscChar * sFaultactor);
+
+/**
+ * To set the soap fault detail for simple text detail
+ *
+ * @param sFaultdetail detail
+ * @return status
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscSoapFaultSetFaultDetail(AXISCHANDLE soapFault, const AxiscChar * sFaultdetail);
+
+/**
+ * To set the soap fault detail for complex detail
+ *
+ * @param pCmplxFaultObject detail
+ * @return status
+ */
+AXISC_STORAGE_CLASS_INFO
+int axiscSoapFaultSetCmplxFaultObject(AXISCHANDLE soapFault, const void * pCmplxFaultObject);
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* ISOAPFAULT_INCLUDED */



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org