Main Page | Class Hierarchy | Class List | File List | Class Members | File Members | Related Pages | Examples

GDefine.hpp

00001 /* 00002 * Copyright 2003-2004 The Apache Software Foundation. 00003 // (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved 00004 * 00005 * Licensed under the Apache License, Version 2.0 (the "License"); 00006 * you may not use this file except in compliance with the License. 00007 * You may obtain a copy of the License at 00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.0 00010 * 00011 * Unless required by applicable law or agreed to in writing, software 00012 * distributed under the License is distributed on an "AS IS" BASIS, 00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00014 * See the License for the specific language governing permissions and 00015 * limitations under the License. 00016 * 00017 * 00018 * @author Susantha Kumara (skumara@virtusa.com) 00019 * 00020 */ 00021 #ifdef WIN32 00022 #pragma warning (disable : 4786) 00023 #pragma warning (disable : 4530) 00024 #endif 00025 00026 #if !defined(__GDEFINE_OF_AXIS_INCLUDED__) 00027 #define __GDEFINE_OF_AXIS_INCLUDED__ 00028 00029 /* This file contains all global definitions that are valid across whole 00030 * Axis C++ project. 00031 */ 00032 00033 #define AXIS_CPP_NAMESPACE_START namespace axiscpp { 00034 #define AXIS_CPP_NAMESPACE_END } 00035 /* 00036 The following is necessary for the skeletons and stubs to be built 00037 */ 00038 namespace axiscpp {} 00039 00040 #define AXIS_CPP_NAMESPACE_USE using namespace axiscpp; 00041 #define AXIS_CPP_NAMESPACE_PREFIX axiscpp:: 00042 00043 AXIS_CPP_NAMESPACE_START 00044 00045 typedef enum {SECURE, UNSECURE} AXIS_SECURE_PROTOCOL; 00046 00047 typedef enum 00048 { 00049 AXIS_SUCCESS=0, 00050 AXIS_FAIL = -1, 00051 AXIS_OBJECT_ALREADY_EXISTS=1, 00052 AXIS_NO_SUCH_HANDLER, 00053 AXIS_NO_SUCH_SERVICE, 00054 AXIS_NO_REMAINING_SOAP_HEADERS 00055 } AXIS_GLOBAL_ERROR; 00056 typedef enum 00057 { 00058 APT_UNKNOWN = -1, APTHTTP1_0=0, APTHTTP1_1, APTFTP, APTSMTP, APTHTTPS, APTOTHER 00059 } AXIS_PROTOCOL_TYPE; 00060 00061 typedef enum 00062 { 00063 SOAPACTION_HEADER, 00064 SERVICE_URI, 00065 OPERATION_NAME, 00066 SOAP_MESSAGE_LENGTH, 00067 TRANSPORT_PROPERTIES, 00068 SECURE_PROPERTIES, 00069 DLL_NAME, 00070 CHANNEL_HTTP_SSL_DLL_NAME = DLL_NAME, 00071 CHANNEL_HTTP_DLL_NAME, 00072 CONTENT_TYPE 00073 } AXIS_TRANSPORT_INFORMATION_TYPE; 00074 00075 #define SOAPACTIONHEADER "SOAPAction" 00076 00077 #define AxisChar char 00078 #define AxisXMLCh char 00079 #define XML_Ch AxisChar 00080 #define AxisString std::basic_string<char> 00081 #define AxisXMLString std::basic_string<AxisXMLCh> 00082 00083 #ifdef WIN32 00084 #define AxisSprintf(X, Y, Z, W) sprintf(X, Z, W) 00085 #else /* linux */ 00086 #define AxisSprintf(X, Y, Z, W) sprintf(X, Z, W) 00087 #endif 00088 00089 #if defined(WIN32) 00090 #define STORAGE_CLASS_INFO __declspec(dllexport) 00091 #else 00092 #define STORAGE_CLASS_INFO 00093 #endif 00094 00095 #if defined(__GNUC__) 00096 /*replaced stdcall with cdecl to make it work on some platforms with older libraries - Samisa*/ 00097 /*#define AXISCALL __attribute__((stdcall))*/ 00098 #define AXISCALL __attribute__((cdecl)) 00099 #else /* unix or win32 */ 00100 #if defined(__unix) 00101 #define AXISCALL 00102 #else 00103 #define AXISCALL __stdcall 00104 #endif 00105 #endif 00106 00107 /* 00108 * Following macro define an API function of Axis C++ 00109 * Format of the AXISAPI macro is as follows 00110 * AXISAPI(<METHOD NAME>, <PARAMETER LIST>) 00111 */ 00112 00113 #define AXISAPI(M, P) AXISCALL M P = 0; 00114 #define APIHASPARAMS 00115 #define APINOPARAMS 00116 00117 AXIS_CPP_NAMESPACE_END 00118 #endif 00119 00120

Generated on Sat Apr 9 15:11:57 2005 for AxisC++ by doxygen 1.3.8